try {
ArrayList<VarLenBinaryReader.VarLengthColumn> varLengthColumns = new ArrayList<>();
ArrayList<VarLenBinaryReader.NullableVarLengthColumn> nullableVarLengthColumns = new ArrayList<>();
// initialize all of the column read status objects
boolean fieldFixedLength = false;
MaterializedField field;
for (int i = 0; i < columns.size(); ++i) {
column = columns.get(i);
columnChunkMetaData = footer.getBlocks().get(0).getColumns().get(i);
field = MaterializedField.create(toFieldName(column.getPath()),
toMajorType(column.getType(), getDataMode(column)));