code: private Object sawLoad(int seen, Object userObject) {
          int reg = RegisterUtils.getALoadReg(this, seen);
          if (localSpecialObjects.containsKey(Integer.valueOf(reg))) {
              return Integer.valueOf(reg);
          }
          return userObject;
      }
docs: TODO: returning two types of objects, this awful, need to fix at some point