// set parent
    Node(ModelReader reader) throws IOException {
      parent_ = reader.readInt();
      cleft_ = reader.readInt();
      cright_ = reader.readInt();
      sindex_ = reader.readInt();

      if (is_leaf()) {
        leaf_value = reader.readFloat();
        split_cond = Float.NaN;
      } else {
        split_cond = reader.readFloat();
        leaf_value = Float.NaN;
      }
    }
 RTreeNodeStat(ModelReader reader) throws IOException {
   loss_chg = reader.readFloat();
   sum_hess = reader.readFloat();
   base_weight = reader.readFloat();
   leaf_child_cnt = reader.readInt();
 }