code: private static int[] mapRandomKeys(String randomKeys, boolean control, boolean meta) {
          if(randomKeys == null)
              throw null;
  
          //parse the rest after control/meta
          int[] out;
          int pos = 0;
          if(meta) {
              out = new int[randomKeys.length()+1];
              out[0] = 27;
              pos = 1;
          }
          else
              out = new int[randomKeys.length()];
  
          int[] random;
          if(control)
              random = convertRandomControlKeys(randomKeys);
          else
              random = convertRandomKeys(randomKeys);
  
          for(int i=0; i < random.length; i++,pos++)
              out[pos] = random[i];
  
          return out;
      }
docs: Map all random keys after meta/control to its proper int value.
  - yes its a bad method name....
  
  @param randomKeys keys after meta/control
  @param control true or false
  @param meta true or false
  @return int mapping based on randomKeys + control/meta