code: static private void encodeLastByte(byte last, int byteIndex, StringBuilder output) {
          int chunk;
          int offset = byteIndex % 5;
          switch (offset) {
              case 0:
                  chunk = ((last & 0x07) << 2);
                  output.append(lookupTable.charAt(chunk));
                  break;
              case 1:
                  chunk = ((last & 0x01) << 4);
                  output.append(lookupTable.charAt(chunk));
                  break;
              case 2:
                  chunk = ((last & 0x0F) << 1);
                  output.append(lookupTable.charAt(chunk));
                  break;
              case 3:
                  chunk = ((last & 0x03) << 3);
                  output.append(lookupTable.charAt(chunk));
                  break;
              case 4:
                  break;
          }
      }
docs: mask:   F8  07  C0 3E  01 F0  0F 80  7C 03  E0  1F