code: @Override
      <T> T parseRemaining(Class<T> declaredType) throws Exception {
          // the array and version has already been read
          overrideBasePackage = declaredType.getPackage().getName() + ".";
          // ref count + class map
          parseClassDescriptions();
  
          // parse
          Object parsed = parseObject(declaredType, null, null, null, true);
          return declaredType.cast(parsed);
      }
docs: parses the root bean