whole_func_string: function strToUTF8Arr(sDOMStr) {
  
          var aBytes, nChr, nStrLen = sDOMStr.length, nArrLen = 0,
              nMapIdx,
              nIdx, nChrIdx;
  
          /* mapping... */
  
          for (nMapIdx = 0; nMapIdx < nStrLen; nMapIdx++) {
              nChr = sDOMStr.charCodeAt(nMapIdx);
              nArrLen += nChr < 0x80 ? 1 : nChr < 0x800 ? 2 : nChr < 0x10000 ? 3 : nChr < 0x200000 ? 4 : nChr < 0x4000000 ? 5 : 6;
          }
  
          aBytes = new Uint8Array(nArrLen);
  
          /* transcription... */
  
          for (nIdx = 0, nChrIdx = 0; nIdx < nArrLen; nChrIdx++) {
              nChr = sDOMStr.charCodeAt(nChrIdx);
              if (nChr < 128) {
                  /* one byte */
                  aBytes[nIdx++] = nChr;
              } else if (nChr < 0x800) {
                  /* two bytes */
                  aBytes[nIdx++] = 192 + (nChr >>> 6);
                  aBytes[nIdx++] = 128 + (nChr & 63);
              } else if (nChr < 0x10000) {
                  /* three bytes */
                  aBytes[nIdx++] = 224 + (nChr >>> 12);
                  aBytes[nIdx++] = 128 + (nChr >>> 6 & 63);
                  aBytes[nIdx++] = 128 + (nChr & 63);
              } else if (nChr < 0x200000) {
                  /* four bytes */
                  aBytes[nIdx++] = 240 + (nChr >>> 18);
                  aBytes[nIdx++] = 128 + (nChr >>> 12 & 63);
                  aBytes[nIdx++] = 128 + (nChr >>> 6 & 63);
                  aBytes[nIdx++] = 128 + (nChr & 63);
              } else if (nChr < 0x4000000) {
                  /* five bytes */
                  aBytes[nIdx++] = 248 + (nChr >>> 24);
                  aBytes[nIdx++] = 128 + (nChr >>> 18 & 63);
                  aBytes[nIdx++] = 128 + (nChr >>> 12 & 63);
                  aBytes[nIdx++] = 128 + (nChr >>> 6 & 63);
                  aBytes[nIdx++] = 128 + (nChr & 63);
              } else /* if (nChr <= 0x7fffffff) */ {
                  /* six bytes */
                  aBytes[nIdx++] = 252 + /* (nChr >>> 32) is not possible in ECMAScript! So...: */ (nChr / 1073741824);
                  aBytes[nIdx++] = 128 + (nChr >>> 24 & 63);
                  aBytes[nIdx++] = 128 + (nChr >>> 18 & 63);
                  aBytes[nIdx++] = 128 + (nChr >>> 12 & 63);
                  aBytes[nIdx++] = 128 + (nChr >>> 6 & 63);
                  aBytes[nIdx++] = 128 + (nChr & 63);
              }
          }
  
          return aBytes;
  
      }
func_code_string: function strToUTF8Arr(sDOMStr) {
  
          var aBytes, nChr, nStrLen = sDOMStr.length, nArrLen = 0,
              nMapIdx,
              nIdx, nChrIdx;
  
          /* mapping... */
  
          for (nMapIdx = 0; nMapIdx < nStrLen; nMapIdx++) {
              nChr = sDOMStr.charCodeAt(nMapIdx);
              nArrLen += nChr < 0x80 ? 1 : nChr < 0x800 ? 2 : nChr < 0x10000 ? 3 : nChr < 0x200000 ? 4 : nChr < 0x4000000 ? 5 : 6;
          }
  
          aBytes = new Uint8Array(nArrLen);
  
          /* transcription... */
  
          for (nIdx = 0, nChrIdx = 0; nIdx < nArrLen; nChrIdx++) {
              nChr = sDOMStr.charCodeAt(nChrIdx);
              if (nChr < 128) {
                  /* one byte */
                  aBytes[nIdx++] = nChr;
              } else if (nChr < 0x800) {
                  /* two bytes */
                  aBytes[nIdx++] = 192 + (nChr >>> 6);
                  aBytes[nIdx++] = 128 + (nChr & 63);
              } else if (nChr < 0x10000) {
                  /* three bytes */
                  aBytes[nIdx++] = 224 + (nChr >>> 12);
                  aBytes[nIdx++] = 128 + (nChr >>> 6 & 63);
                  aBytes[nIdx++] = 128 + (nChr & 63);
              } else if (nChr < 0x200000) {
                  /* four bytes */
                  aBytes[nIdx++] = 240 + (nChr >>> 18);
                  aBytes[nIdx++] = 128 + (nChr >>> 12 & 63);
                  aBytes[nIdx++] = 128 + (nChr >>> 6 & 63);
                  aBytes[nIdx++] = 128 + (nChr & 63);
              } else if (nChr < 0x4000000) {
                  /* five bytes */
                  aBytes[nIdx++] = 248 + (nChr >>> 24);
                  aBytes[nIdx++] = 128 + (nChr >>> 18 & 63);
                  aBytes[nIdx++] = 128 + (nChr >>> 12 & 63);
                  aBytes[nIdx++] = 128 + (nChr >>> 6 & 63);
                  aBytes[nIdx++] = 128 + (nChr & 63);
              } else /* if (nChr <= 0x7fffffff) */ {
                  /* six bytes */
                  aBytes[nIdx++] = 252 + /* (nChr >>> 32) is not possible in ECMAScript! So...: */ (nChr / 1073741824);
                  aBytes[nIdx++] = 128 + (nChr >>> 24 & 63);
                  aBytes[nIdx++] = 128 + (nChr >>> 18 & 63);
                  aBytes[nIdx++] = 128 + (nChr >>> 12 & 63);
                  aBytes[nIdx++] = 128 + (nChr >>> 6 & 63);
                  aBytes[nIdx++] = 128 + (nChr & 63);
              }
          }
  
          return aBytes;
  
      }
func_documentation_string: /* DOMString to UTF-8 array