docs: private void write(int incomingData) throws Exception {
          int    tmpData = incomingData;
          BitSet bits    = fromByte((byte) tmpData);
          byte   out     = (byte) ((bits.get(3)
                                    ? 1 << d7Bit
                                    : 0 << d7Bit) | (bits.get(2)
                  ? 1 << d6Bit
                  : 0 << d6Bit) | (bits.get(1)
                                   ? 1 << d5Bit
                                   : 0 << d5Bit) | (bits.get(0)
                  ? 1 << d4Bit
                  : 0 << d4Bit) | (isBacklight()
                                   ? 1 << backlightBit
                                   : 0 << backlightBit) | (rsFlag
                  ? 1 << rsBit
                  : 0 << rsBit) | (eFlag
                                   ? 1 << eBit
                                   : 0 << eBit));
  
          // ReMap - Default case where everything just works is
  
          /*
           *  7 backlightBit
           *  6 rsBit
           *  5 rwBit
           *  4 eBit
           *  3 d7
           *  2 d6
           *  1 d5
           *  0 d4
           */
  
          /*
           *  Sainsmart Use case:
           * 3 backlightBit
           * 0 rsBit
           * 1 rwBit
           * 2 eBit
           * 7 d7
           * 6 d6
           * 5 d5
           * 4 d4
           */
          dev.write(out);
      }