All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.rcsb.cif.schema.mm.MmCifCategoryBuilder Maven / Gradle / Ivy

package org.rcsb.cif.schema.mm;

import org.rcsb.cif.model.FloatColumnBuilder;
import org.rcsb.cif.model.IntColumnBuilder;
import org.rcsb.cif.model.StrColumnBuilder;
import org.rcsb.cif.model.builder.CategoryBuilderImpl;
import org.rcsb.cif.model.builder.FloatColumnBuilderImpl;
import org.rcsb.cif.model.builder.IntColumnBuilderImpl;
import org.rcsb.cif.model.builder.StrColumnBuilderImpl;

import javax.annotation.Generated;

@Generated("org.rcsb.cif.schema.generator.SchemaGenerator")
public class MmCifCategoryBuilder extends CategoryBuilderImpl {
    public MmCifCategoryBuilder(String blockName, MmCifBlockBuilder parent) {
        super(blockName, parent);
    }

    public static class AtomSiteBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "atom_site";

        public AtomSiteBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public FloatColumnBuilder enterAnisoB11() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "aniso_B[1][1]", this);
        }

        public FloatColumnBuilder enterAnisoB11Esd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "aniso_B[1][1]_esd", this);
        }

        public FloatColumnBuilder enterAnisoB12() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "aniso_B[1][2]", this);
        }

        public FloatColumnBuilder enterAnisoB12Esd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "aniso_B[1][2]_esd", this);
        }

        public FloatColumnBuilder enterAnisoB13() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "aniso_B[1][3]", this);
        }

        public FloatColumnBuilder enterAnisoB13Esd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "aniso_B[1][3]_esd", this);
        }

        public FloatColumnBuilder enterAnisoB22() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "aniso_B[2][2]", this);
        }

        public FloatColumnBuilder enterAnisoB22Esd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "aniso_B[2][2]_esd", this);
        }

        public FloatColumnBuilder enterAnisoB23() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "aniso_B[2][3]", this);
        }

        public FloatColumnBuilder enterAnisoB23Esd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "aniso_B[2][3]_esd", this);
        }

        public FloatColumnBuilder enterAnisoB33() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "aniso_B[3][3]", this);
        }

        public FloatColumnBuilder enterAnisoB33Esd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "aniso_B[3][3]_esd", this);
        }

        public FloatColumnBuilder enterAnisoRatio() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "aniso_ratio", this);
        }

        public FloatColumnBuilder enterAnisoU11() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "aniso_U[1][1]", this);
        }

        public FloatColumnBuilder enterAnisoU11Esd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "aniso_U[1][1]_esd", this);
        }

        public FloatColumnBuilder enterAnisoU12() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "aniso_U[1][2]", this);
        }

        public FloatColumnBuilder enterAnisoU12Esd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "aniso_U[1][2]_esd", this);
        }

        public FloatColumnBuilder enterAnisoU13() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "aniso_U[1][3]", this);
        }

        public FloatColumnBuilder enterAnisoU13Esd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "aniso_U[1][3]_esd", this);
        }

        public FloatColumnBuilder enterAnisoU22() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "aniso_U[2][2]", this);
        }

        public FloatColumnBuilder enterAnisoU22Esd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "aniso_U[2][2]_esd", this);
        }

        public FloatColumnBuilder enterAnisoU23() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "aniso_U[2][3]", this);
        }

        public FloatColumnBuilder enterAnisoU23Esd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "aniso_U[2][3]_esd", this);
        }

        public FloatColumnBuilder enterAnisoU33() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "aniso_U[3][3]", this);
        }

        public FloatColumnBuilder enterAnisoU33Esd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "aniso_U[3][3]_esd", this);
        }

        public IntColumnBuilder enterAttachedHydrogens() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "attached_hydrogens", this);
        }

        public StrColumnBuilder enterAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id", this);
        }

        public StrColumnBuilder enterAuthAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_atom_id", this);
        }

        public StrColumnBuilder enterAuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_comp_id", this);
        }

        public IntColumnBuilder enterAuthSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id", this);
        }

        public FloatColumnBuilder enterBEquivGeomMean() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "B_equiv_geom_mean", this);
        }

        public FloatColumnBuilder enterBEquivGeomMeanEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "B_equiv_geom_mean_esd", this);
        }

        public FloatColumnBuilder enterBIsoOrEquiv() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "B_iso_or_equiv", this);
        }

        public FloatColumnBuilder enterBIsoOrEquivEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "B_iso_or_equiv_esd", this);
        }

        public StrColumnBuilder enterCalcAttachedAtom() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "calc_attached_atom", this);
        }

        public StrColumnBuilder enterCalcFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "calc_flag", this);
        }

        public FloatColumnBuilder enterCartnX() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Cartn_x", this);
        }

        public FloatColumnBuilder enterCartnXEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Cartn_x_esd", this);
        }

        public FloatColumnBuilder enterCartnY() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Cartn_y", this);
        }

        public FloatColumnBuilder enterCartnYEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Cartn_y_esd", this);
        }

        public FloatColumnBuilder enterCartnZ() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Cartn_z", this);
        }

        public FloatColumnBuilder enterCartnZEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Cartn_z_esd", this);
        }

        public IntColumnBuilder enterChemicalConnNumber() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "chemical_conn_number", this);
        }

        public StrColumnBuilder enterConstraints() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "constraints", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterDisorderAssembly() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "disorder_assembly", this);
        }

        public StrColumnBuilder enterDisorderGroup() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "disorder_group", this);
        }

        public StrColumnBuilder enterFootnoteId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "footnote_id", this);
        }

        public FloatColumnBuilder enterFractX() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "fract_x", this);
        }

        public FloatColumnBuilder enterFractXEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "fract_x_esd", this);
        }

        public FloatColumnBuilder enterFractY() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "fract_y", this);
        }

        public FloatColumnBuilder enterFractYEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "fract_y_esd", this);
        }

        public FloatColumnBuilder enterFractZ() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "fract_z", this);
        }

        public FloatColumnBuilder enterFractZEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "fract_z_esd", this);
        }

        public StrColumnBuilder enterGroupPDB() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "group_PDB", this);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterLabelAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_alt_id", this);
        }

        public StrColumnBuilder enterLabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_asym_id", this);
        }

        public StrColumnBuilder enterLabelAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_atom_id", this);
        }

        public StrColumnBuilder enterLabelCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_comp_id", this);
        }

        public StrColumnBuilder enterLabelEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_entity_id", this);
        }

        public IntColumnBuilder enterLabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "label_seq_id", this);
        }

        public FloatColumnBuilder enterOccupancy() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "occupancy", this);
        }

        public FloatColumnBuilder enterOccupancyEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "occupancy_esd", this);
        }

        public StrColumnBuilder enterRestraints() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "restraints", this);
        }

        public IntColumnBuilder enterSymmetryMultiplicity() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "symmetry_multiplicity", this);
        }

        public StrColumnBuilder enterThermalDisplaceType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "thermal_displace_type", this);
        }

        public StrColumnBuilder enterTypeSymbol() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type_symbol", this);
        }

        public FloatColumnBuilder enterUEquivGeomMean() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "U_equiv_geom_mean", this);
        }

        public FloatColumnBuilder enterUEquivGeomMeanEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "U_equiv_geom_mean_esd", this);
        }

        public FloatColumnBuilder enterUIsoOrEquiv() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "U_iso_or_equiv", this);
        }

        public FloatColumnBuilder enterUIsoOrEquivEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "U_iso_or_equiv_esd", this);
        }

        public StrColumnBuilder enterWyckoffSymbol() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "Wyckoff_symbol", this);
        }

        public StrColumnBuilder enterPdbxAtomAmbiguity() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_atom_ambiguity", this);
        }

        public StrColumnBuilder enterAdpType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "adp_type", this);
        }

        public StrColumnBuilder enterRefinementFlags() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "refinement_flags", this);
        }

        public StrColumnBuilder enterRefinementFlagsAdp() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "refinement_flags_adp", this);
        }

        public StrColumnBuilder enterRefinementFlagsOccupancy() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "refinement_flags_occupancy", this);
        }

        public StrColumnBuilder enterRefinementFlagsPosn() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "refinement_flags_posn", this);
        }

        public StrColumnBuilder enterPdbxAuthAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_auth_alt_id", this);
        }

        public StrColumnBuilder enterPdbxPDBInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_PDB_ins_code", this);
        }

        public IntColumnBuilder enterPdbxPDBModelNum() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_PDB_model_num", this);
        }

        public StrColumnBuilder enterPdbxPDBResidueNo() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_PDB_residue_no", this);
        }

        public StrColumnBuilder enterPdbxPDBResidueName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_PDB_residue_name", this);
        }

        public StrColumnBuilder enterPdbxPDBStrandId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_PDB_strand_id", this);
        }

        public StrColumnBuilder enterPdbxPDBAtomName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_PDB_atom_name", this);
        }

        public StrColumnBuilder enterPdbxAuthAtomName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_auth_atom_name", this);
        }

        public IntColumnBuilder enterPdbxFormalCharge() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_formal_charge", this);
        }

        public StrColumnBuilder enterPdbxAuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_auth_comp_id", this);
        }

        public StrColumnBuilder enterPdbxAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_auth_asym_id", this);
        }

        public StrColumnBuilder enterPdbxAuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_auth_seq_id", this);
        }

        public StrColumnBuilder enterPdbxTlsGroupId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_tls_group_id", this);
        }

        public StrColumnBuilder enterPdbxNcsDomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_ncs_dom_id", this);
        }

        public StrColumnBuilder enterPdbxStructGroupId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_struct_group_id", this);
        }

        public StrColumnBuilder enterPdbxGroupNDB() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_group_NDB", this);
        }

        public StrColumnBuilder enterPdbxAtomGroup() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_atom_group", this);
        }

        public StrColumnBuilder enterPdbxLabelSeqNum() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_label_seq_num", this);
        }

        public StrColumnBuilder enterPdbxNotInAsym() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_not_in_asym", this);
        }

        public IntColumnBuilder enterPdbxLabelIndex() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_label_index", this);
        }

        public StrColumnBuilder enterPdbxSiftsXrefDbName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_sifts_xref_db_name", this);
        }

        public StrColumnBuilder enterPdbxSiftsXrefDbAcc() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_sifts_xref_db_acc", this);
        }

        public StrColumnBuilder enterPdbxSiftsXrefDbNum() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_sifts_xref_db_num", this);
        }

        public StrColumnBuilder enterPdbxSiftsXrefDbRes() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_sifts_xref_db_res", this);
        }

        public IntColumnBuilder enterIhmModelId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ihm_model_id", this);
        }

    }

    public static class AtomSiteAnisotropBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "atom_site_anisotrop";

        public AtomSiteAnisotropBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public FloatColumnBuilder enterB11() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "B[1][1]", this);
        }

        public FloatColumnBuilder enterB11Esd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "B[1][1]_esd", this);
        }

        public FloatColumnBuilder enterB12() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "B[1][2]", this);
        }

        public FloatColumnBuilder enterB12Esd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "B[1][2]_esd", this);
        }

        public FloatColumnBuilder enterB13() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "B[1][3]", this);
        }

        public FloatColumnBuilder enterB13Esd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "B[1][3]_esd", this);
        }

        public FloatColumnBuilder enterB22() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "B[2][2]", this);
        }

        public FloatColumnBuilder enterB22Esd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "B[2][2]_esd", this);
        }

        public FloatColumnBuilder enterB23() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "B[2][3]", this);
        }

        public FloatColumnBuilder enterB23Esd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "B[2][3]_esd", this);
        }

        public FloatColumnBuilder enterB33() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "B[3][3]", this);
        }

        public FloatColumnBuilder enterB33Esd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "B[3][3]_esd", this);
        }

        public FloatColumnBuilder enterRatio() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ratio", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterTypeSymbol() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type_symbol", this);
        }

        public FloatColumnBuilder enterU11() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "U[1][1]", this);
        }

        public FloatColumnBuilder enterU11Esd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "U[1][1]_esd", this);
        }

        public FloatColumnBuilder enterU12() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "U[1][2]", this);
        }

        public FloatColumnBuilder enterU12Esd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "U[1][2]_esd", this);
        }

        public FloatColumnBuilder enterU13() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "U[1][3]", this);
        }

        public FloatColumnBuilder enterU13Esd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "U[1][3]_esd", this);
        }

        public FloatColumnBuilder enterU22() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "U[2][2]", this);
        }

        public FloatColumnBuilder enterU22Esd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "U[2][2]_esd", this);
        }

        public FloatColumnBuilder enterU23() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "U[2][3]", this);
        }

        public FloatColumnBuilder enterU23Esd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "U[2][3]_esd", this);
        }

        public FloatColumnBuilder enterU33() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "U[3][3]", this);
        }

        public FloatColumnBuilder enterU33Esd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "U[3][3]_esd", this);
        }

        public StrColumnBuilder enterPdbxAuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_auth_seq_id", this);
        }

        public StrColumnBuilder enterPdbxAuthAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_auth_alt_id", this);
        }

        public StrColumnBuilder enterPdbxAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_auth_asym_id", this);
        }

        public StrColumnBuilder enterPdbxAuthAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_auth_atom_id", this);
        }

        public StrColumnBuilder enterPdbxAuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_auth_comp_id", this);
        }

        public IntColumnBuilder enterPdbxLabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_label_seq_id", this);
        }

        public StrColumnBuilder enterPdbxLabelAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_label_alt_id", this);
        }

        public StrColumnBuilder enterPdbxLabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_label_asym_id", this);
        }

        public StrColumnBuilder enterPdbxLabelAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_label_atom_id", this);
        }

        public StrColumnBuilder enterPdbxLabelCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_label_comp_id", this);
        }

        public StrColumnBuilder enterPdbxPDBInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_PDB_ins_code", this);
        }

        public IntColumnBuilder enterPdbxPDBModelNum() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_PDB_model_num", this);
        }

        public StrColumnBuilder enterPdbxNotInAsym() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_not_in_asym", this);
        }

        public StrColumnBuilder enterPdbxPDBResidueNo() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_PDB_residue_no", this);
        }

        public StrColumnBuilder enterPdbxPDBResidueName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_PDB_residue_name", this);
        }

        public StrColumnBuilder enterPdbxPDBStrandId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_PDB_strand_id", this);
        }

        public StrColumnBuilder enterPdbxPDBAtomName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_PDB_atom_name", this);
        }

        public StrColumnBuilder enterPdbxAuthAtomName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_auth_atom_name", this);
        }

        public StrColumnBuilder enterPdbxLabelInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_label_ins_code", this);
        }

    }

    public static class AtomSitesBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "atom_sites";

        public AtomSitesBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public FloatColumnBuilder enterCartnTransfMatrix11() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Cartn_transf_matrix[1][1]", this);
        }

        public FloatColumnBuilder enterCartnTransfMatrix12() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Cartn_transf_matrix[1][2]", this);
        }

        public FloatColumnBuilder enterCartnTransfMatrix13() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Cartn_transf_matrix[1][3]", this);
        }

        public FloatColumnBuilder enterCartnTransfMatrix21() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Cartn_transf_matrix[2][1]", this);
        }

        public FloatColumnBuilder enterCartnTransfMatrix22() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Cartn_transf_matrix[2][2]", this);
        }

        public FloatColumnBuilder enterCartnTransfMatrix23() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Cartn_transf_matrix[2][3]", this);
        }

        public FloatColumnBuilder enterCartnTransfMatrix31() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Cartn_transf_matrix[3][1]", this);
        }

        public FloatColumnBuilder enterCartnTransfMatrix32() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Cartn_transf_matrix[3][2]", this);
        }

        public FloatColumnBuilder enterCartnTransfMatrix33() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Cartn_transf_matrix[3][3]", this);
        }

        public FloatColumnBuilder enterCartnTransfVector1() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Cartn_transf_vector[1]", this);
        }

        public FloatColumnBuilder enterCartnTransfVector2() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Cartn_transf_vector[2]", this);
        }

        public FloatColumnBuilder enterCartnTransfVector3() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Cartn_transf_vector[3]", this);
        }

        public StrColumnBuilder enterCartnTransformAxes() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "Cartn_transform_axes", this);
        }

        public FloatColumnBuilder enterFractTransfMatrix11() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "fract_transf_matrix[1][1]", this);
        }

        public FloatColumnBuilder enterFractTransfMatrix12() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "fract_transf_matrix[1][2]", this);
        }

        public FloatColumnBuilder enterFractTransfMatrix13() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "fract_transf_matrix[1][3]", this);
        }

        public FloatColumnBuilder enterFractTransfMatrix21() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "fract_transf_matrix[2][1]", this);
        }

        public FloatColumnBuilder enterFractTransfMatrix22() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "fract_transf_matrix[2][2]", this);
        }

        public FloatColumnBuilder enterFractTransfMatrix23() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "fract_transf_matrix[2][3]", this);
        }

        public FloatColumnBuilder enterFractTransfMatrix31() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "fract_transf_matrix[3][1]", this);
        }

        public FloatColumnBuilder enterFractTransfMatrix32() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "fract_transf_matrix[3][2]", this);
        }

        public FloatColumnBuilder enterFractTransfMatrix33() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "fract_transf_matrix[3][3]", this);
        }

        public FloatColumnBuilder enterFractTransfVector1() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "fract_transf_vector[1]", this);
        }

        public FloatColumnBuilder enterFractTransfVector2() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "fract_transf_vector[2]", this);
        }

        public FloatColumnBuilder enterFractTransfVector3() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "fract_transf_vector[3]", this);
        }

        public StrColumnBuilder enterSolutionPrimary() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "solution_primary", this);
        }

        public StrColumnBuilder enterSolutionSecondary() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "solution_secondary", this);
        }

        public StrColumnBuilder enterSolutionHydrogens() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "solution_hydrogens", this);
        }

        public StrColumnBuilder enterSpecialDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "special_details", this);
        }

    }

    public static class AtomSitesAltBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "atom_sites_alt";

        public AtomSitesAltBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

    }

    public static class AtomSitesAltEnsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "atom_sites_alt_ens";

        public AtomSitesAltEnsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

    }

    public static class AtomSitesAltGenBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "atom_sites_alt_gen";

        public AtomSitesAltGenBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "alt_id", this);
        }

        public StrColumnBuilder enterEnsId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ens_id", this);
        }

    }

    public static class AtomSitesFootnoteBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "atom_sites_footnote";

        public AtomSitesFootnoteBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterText() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "text", this);
        }

    }

    public static class AtomTypeBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "atom_type";

        public AtomTypeBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public FloatColumnBuilder enterAnalyticalMassPercent() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "analytical_mass_percent", this);
        }

        public StrColumnBuilder enterDescription() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "description", this);
        }

        public IntColumnBuilder enterNumberInCell() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number_in_cell", this);
        }

        public IntColumnBuilder enterOxidationNumber() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "oxidation_number", this);
        }

        public FloatColumnBuilder enterRadiusBond() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "radius_bond", this);
        }

        public FloatColumnBuilder enterRadiusContact() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "radius_contact", this);
        }

        public FloatColumnBuilder enterScatCromerMannA1() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "scat_Cromer_Mann_a1", this);
        }

        public FloatColumnBuilder enterScatCromerMannA2() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "scat_Cromer_Mann_a2", this);
        }

        public FloatColumnBuilder enterScatCromerMannA3() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "scat_Cromer_Mann_a3", this);
        }

        public FloatColumnBuilder enterScatCromerMannA4() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "scat_Cromer_Mann_a4", this);
        }

        public FloatColumnBuilder enterScatCromerMannB1() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "scat_Cromer_Mann_b1", this);
        }

        public FloatColumnBuilder enterScatCromerMannB2() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "scat_Cromer_Mann_b2", this);
        }

        public FloatColumnBuilder enterScatCromerMannB3() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "scat_Cromer_Mann_b3", this);
        }

        public FloatColumnBuilder enterScatCromerMannB4() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "scat_Cromer_Mann_b4", this);
        }

        public FloatColumnBuilder enterScatCromerMannC() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "scat_Cromer_Mann_c", this);
        }

        public FloatColumnBuilder enterScatDispersionImag() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "scat_dispersion_imag", this);
        }

        public FloatColumnBuilder enterScatDispersionReal() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "scat_dispersion_real", this);
        }

        public StrColumnBuilder enterScatLengthNeutron() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "scat_length_neutron", this);
        }

        public StrColumnBuilder enterScatSource() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "scat_source", this);
        }

        public StrColumnBuilder enterScatVersusStolList() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "scat_versus_stol_list", this);
        }

        public StrColumnBuilder enterSymbol() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "symbol", this);
        }

        public StrColumnBuilder enterScatDispersionSource() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "scat_dispersion_source", this);
        }

        public FloatColumnBuilder enterPdbxScatCromerMannA5() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_scat_Cromer_Mann_a5", this);
        }

        public FloatColumnBuilder enterPdbxScatCromerMannB5() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_scat_Cromer_Mann_b5", this);
        }

        public FloatColumnBuilder enterPdbxScatCromerMannA6() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_scat_Cromer_Mann_a6", this);
        }

        public FloatColumnBuilder enterPdbxScatCromerMannB6() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_scat_Cromer_Mann_b6", this);
        }

        public IntColumnBuilder enterPdbxScatZ() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_scat_Z", this);
        }

        public IntColumnBuilder enterPdbxNElectrons() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_N_electrons", this);
        }

    }

    public static class AuditBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "audit";

        public AuditBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterCreationDate() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "creation_date", this);
        }

        public StrColumnBuilder enterCreationMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "creation_method", this);
        }

        public StrColumnBuilder enterRevisionId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "revision_id", this);
        }

        public StrColumnBuilder enterUpdateRecord() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "update_record", this);
        }

    }

    public static class AuditAuthorBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "audit_author";

        public AuditAuthorBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterAddress() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "address", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public IntColumnBuilder enterPdbxOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_ordinal", this);
        }

        public StrColumnBuilder enterIdentifierORCID() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "identifier_ORCID", this);
        }

    }

    public static class AuditConformBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "audit_conform";

        public AuditConformBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDictLocation() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "dict_location", this);
        }

        public StrColumnBuilder enterDictName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "dict_name", this);
        }

        public StrColumnBuilder enterDictVersion() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "dict_version", this);
        }

    }

    public static class AuditContactAuthorBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "audit_contact_author";

        public AuditContactAuthorBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterAddress() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "address", this);
        }

        public StrColumnBuilder enterEmail() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "email", this);
        }

        public StrColumnBuilder enterFax() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "fax", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public StrColumnBuilder enterPhone() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "phone", this);
        }

    }

    public static class CellBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "cell";

        public CellBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public FloatColumnBuilder enterAngleAlpha() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "angle_alpha", this);
        }

        public FloatColumnBuilder enterAngleAlphaEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "angle_alpha_esd", this);
        }

        public FloatColumnBuilder enterAngleBeta() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "angle_beta", this);
        }

        public FloatColumnBuilder enterAngleBetaEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "angle_beta_esd", this);
        }

        public FloatColumnBuilder enterAngleGamma() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "angle_gamma", this);
        }

        public FloatColumnBuilder enterAngleGammaEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "angle_gamma_esd", this);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public IntColumnBuilder enterFormulaUnitsZ() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "formula_units_Z", this);
        }

        public FloatColumnBuilder enterLengthA() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "length_a", this);
        }

        public FloatColumnBuilder enterLengthAEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "length_a_esd", this);
        }

        public FloatColumnBuilder enterLengthB() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "length_b", this);
        }

        public FloatColumnBuilder enterLengthBEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "length_b_esd", this);
        }

        public FloatColumnBuilder enterLengthC() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "length_c", this);
        }

        public FloatColumnBuilder enterLengthCEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "length_c_esd", this);
        }

        public FloatColumnBuilder enterVolume() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "volume", this);
        }

        public FloatColumnBuilder enterVolumeEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "volume_esd", this);
        }

        public IntColumnBuilder enterZPDB() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "Z_PDB", this);
        }

        public FloatColumnBuilder enterReciprocalAngleAlpha() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "reciprocal_angle_alpha", this);
        }

        public FloatColumnBuilder enterReciprocalAngleBeta() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "reciprocal_angle_beta", this);
        }

        public FloatColumnBuilder enterReciprocalAngleGamma() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "reciprocal_angle_gamma", this);
        }

        public FloatColumnBuilder enterReciprocalAngleAlphaEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "reciprocal_angle_alpha_esd", this);
        }

        public FloatColumnBuilder enterReciprocalAngleBetaEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "reciprocal_angle_beta_esd", this);
        }

        public FloatColumnBuilder enterReciprocalAngleGammaEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "reciprocal_angle_gamma_esd", this);
        }

        public FloatColumnBuilder enterReciprocalLengthA() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "reciprocal_length_a", this);
        }

        public FloatColumnBuilder enterReciprocalLengthB() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "reciprocal_length_b", this);
        }

        public FloatColumnBuilder enterReciprocalLengthC() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "reciprocal_length_c", this);
        }

        public FloatColumnBuilder enterReciprocalLengthAEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "reciprocal_length_a_esd", this);
        }

        public FloatColumnBuilder enterReciprocalLengthBEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "reciprocal_length_b_esd", this);
        }

        public FloatColumnBuilder enterReciprocalLengthCEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "reciprocal_length_c_esd", this);
        }

        public StrColumnBuilder enterPdbxUniqueAxis() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_unique_axis", this);
        }

        public StrColumnBuilder enterPdbxEsdMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_esd_method", this);
        }

    }

    public static class CellMeasurementBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "cell_measurement";

        public CellMeasurementBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public FloatColumnBuilder enterPressure() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pressure", this);
        }

        public FloatColumnBuilder enterPressureEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pressure_esd", this);
        }

        public StrColumnBuilder enterRadiation() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "radiation", this);
        }

        public IntColumnBuilder enterReflnsUsed() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "reflns_used", this);
        }

        public FloatColumnBuilder enterTemp() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "temp", this);
        }

        public FloatColumnBuilder enterTempEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "temp_esd", this);
        }

        public FloatColumnBuilder enterThetaMax() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "theta_max", this);
        }

        public FloatColumnBuilder enterThetaMin() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "theta_min", this);
        }

        public FloatColumnBuilder enterWavelength() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "wavelength", this);
        }

    }

    public static class CellMeasurementReflnBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "cell_measurement_refln";

        public CellMeasurementReflnBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterIndexH() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "index_h", this);
        }

        public IntColumnBuilder enterIndexK() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "index_k", this);
        }

        public IntColumnBuilder enterIndexL() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "index_l", this);
        }

        public FloatColumnBuilder enterTheta() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "theta", this);
        }

    }

    public static class ChemCompBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "chem_comp";

        public ChemCompBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterFormula() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "formula", this);
        }

        public FloatColumnBuilder enterFormulaWeight() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "formula_weight", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterModelDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "model_details", this);
        }

        public StrColumnBuilder enterModelErf() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "model_erf", this);
        }

        public StrColumnBuilder enterModelSource() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "model_source", this);
        }

        public StrColumnBuilder enterMonNstdClass() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "mon_nstd_class", this);
        }

        public StrColumnBuilder enterMonNstdDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "mon_nstd_details", this);
        }

        public StrColumnBuilder enterMonNstdFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "mon_nstd_flag", this);
        }

        public StrColumnBuilder enterMonNstdParent() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "mon_nstd_parent", this);
        }

        public StrColumnBuilder enterMonNstdParentCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "mon_nstd_parent_comp_id", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public IntColumnBuilder enterNumberAtomsAll() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number_atoms_all", this);
        }

        public IntColumnBuilder enterNumberAtomsNh() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number_atoms_nh", this);
        }

        public StrColumnBuilder enterOneLetterCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "one_letter_code", this);
        }

        public StrColumnBuilder enterThreeLetterCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "three_letter_code", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public StrColumnBuilder enterPdbxSynonyms() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_synonyms", this);
        }

        public StrColumnBuilder enterPdbxModificationDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_modification_details", this);
        }

        public IntColumnBuilder enterPdbxComponentNo() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_component_no", this);
        }

        public StrColumnBuilder enterPdbxType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_type", this);
        }

        public StrColumnBuilder enterPdbxAmbiguousFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_ambiguous_flag", this);
        }

        public StrColumnBuilder enterPdbxReplacedBy() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_replaced_by", this);
        }

        public StrColumnBuilder enterPdbxReplaces() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_replaces", this);
        }

        public IntColumnBuilder enterPdbxFormalCharge() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_formal_charge", this);
        }

        public StrColumnBuilder enterPdbxSubcomponentList() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_subcomponent_list", this);
        }

        public StrColumnBuilder enterPdbxModelCoordinatesDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_model_coordinates_details", this);
        }

        public StrColumnBuilder enterPdbxModelCoordinatesDbCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_model_coordinates_db_code", this);
        }

        public StrColumnBuilder enterPdbxIdealCoordinatesDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_ideal_coordinates_details", this);
        }

        public StrColumnBuilder enterPdbxIdealCoordinatesMissingFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_ideal_coordinates_missing_flag", this);
        }

        public StrColumnBuilder enterPdbxModelCoordinatesMissingFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_model_coordinates_missing_flag", this);
        }

        public StrColumnBuilder enterPdbxInitialDate() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_initial_date", this);
        }

        public StrColumnBuilder enterPdbxModifiedDate() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_modified_date", this);
        }

        public StrColumnBuilder enterPdbxReleaseStatus() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_release_status", this);
        }

        public StrColumnBuilder enterPdbxProcessingSite() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_processing_site", this);
        }

        public IntColumnBuilder enterPdbxNumberSubcomponents() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_number_subcomponents", this);
        }

        public StrColumnBuilder enterPdbxClass1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_class_1", this);
        }

        public StrColumnBuilder enterPdbxClass2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_class_2", this);
        }

        public StrColumnBuilder enterPdbxCompType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_comp_type", this);
        }

        public StrColumnBuilder enterPdbxReservedName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_reserved_name", this);
        }

        public StrColumnBuilder enterPdbxStatus() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_status", this);
        }

        public IntColumnBuilder enterPdbxTypeModified() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_type_modified", this);
        }

        public StrColumnBuilder enterPdbxCasnum() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_casnum", this);
        }

        public StrColumnBuilder enterPdbxSmiles() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_smiles", this);
        }

        public StrColumnBuilder enterPdbxNscnum() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_nscnum", this);
        }

        public StrColumnBuilder enterMaProvenance() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ma_provenance", this);
        }

    }

    public static class ChemCompAngleBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "chem_comp_angle";

        public ChemCompAngleBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterAtomId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id_1", this);
        }

        public StrColumnBuilder enterAtomId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id_2", this);
        }

        public StrColumnBuilder enterAtomId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id_3", this);
        }

        public StrColumnBuilder enterCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id", this);
        }

        public FloatColumnBuilder enterValueAngle() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "value_angle", this);
        }

        public FloatColumnBuilder enterValueAngleEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "value_angle_esd", this);
        }

        public FloatColumnBuilder enterValueDist() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "value_dist", this);
        }

        public FloatColumnBuilder enterValueDistEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "value_dist_esd", this);
        }

    }

    public static class ChemCompAtomBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "chem_comp_atom";

        public ChemCompAtomBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterAltAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "alt_atom_id", this);
        }

        public StrColumnBuilder enterAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id", this);
        }

        public IntColumnBuilder enterCharge() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "charge", this);
        }

        public FloatColumnBuilder enterModelCartnX() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "model_Cartn_x", this);
        }

        public FloatColumnBuilder enterModelCartnXEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "model_Cartn_x_esd", this);
        }

        public FloatColumnBuilder enterModelCartnY() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "model_Cartn_y", this);
        }

        public FloatColumnBuilder enterModelCartnYEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "model_Cartn_y_esd", this);
        }

        public FloatColumnBuilder enterModelCartnZ() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "model_Cartn_z", this);
        }

        public FloatColumnBuilder enterModelCartnZEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "model_Cartn_z_esd", this);
        }

        public StrColumnBuilder enterCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id", this);
        }

        public FloatColumnBuilder enterPartialCharge() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "partial_charge", this);
        }

        public StrColumnBuilder enterSubstructCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "substruct_code", this);
        }

        public StrColumnBuilder enterTypeSymbol() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type_symbol", this);
        }

        public IntColumnBuilder enterPdbxAlign() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_align", this);
        }

        public IntColumnBuilder enterPdbxOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_ordinal", this);
        }

        public StrColumnBuilder enterPdbxComponentAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_component_atom_id", this);
        }

        public StrColumnBuilder enterPdbxComponentCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_component_comp_id", this);
        }

        public StrColumnBuilder enterPdbxAltAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_alt_atom_id", this);
        }

        public StrColumnBuilder enterPdbxAltCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_alt_comp_id", this);
        }

        public FloatColumnBuilder enterPdbxModelCartnXIdeal() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_model_Cartn_x_ideal", this);
        }

        public FloatColumnBuilder enterPdbxModelCartnYIdeal() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_model_Cartn_y_ideal", this);
        }

        public FloatColumnBuilder enterPdbxModelCartnZIdeal() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_model_Cartn_z_ideal", this);
        }

        public StrColumnBuilder enterPdbxStereoConfig() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_stereo_config", this);
        }

        public StrColumnBuilder enterPdbxAromaticFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_aromatic_flag", this);
        }

        public StrColumnBuilder enterPdbxLeavingAtomFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_leaving_atom_flag", this);
        }

        public IntColumnBuilder enterPdbxResidueNumbering() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_residue_numbering", this);
        }

        public StrColumnBuilder enterPdbxPolymerType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_polymer_type", this);
        }

        public StrColumnBuilder enterPdbxRefId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_ref_id", this);
        }

        public IntColumnBuilder enterPdbxComponentId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_component_id", this);
        }

        public IntColumnBuilder enterPdbxComponentEntityId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_component_entity_id", this);
        }

        public StrColumnBuilder enterPdbxStndAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_stnd_atom_id", this);
        }

    }

    public static class ChemCompBondBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "chem_comp_bond";

        public ChemCompBondBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterAtomId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id_1", this);
        }

        public StrColumnBuilder enterAtomId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id_2", this);
        }

        public StrColumnBuilder enterCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id", this);
        }

        public StrColumnBuilder enterValueOrder() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "value_order", this);
        }

        public FloatColumnBuilder enterValueDist() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "value_dist", this);
        }

        public FloatColumnBuilder enterValueDistEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "value_dist_esd", this);
        }

        public IntColumnBuilder enterPdbxOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_ordinal", this);
        }

        public StrColumnBuilder enterPdbxStereoConfig() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_stereo_config", this);
        }

        public StrColumnBuilder enterPdbxAromaticFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_aromatic_flag", this);
        }

    }

    public static class ChemCompChirBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "chem_comp_chir";

        public ChemCompChirBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id", this);
        }

        public StrColumnBuilder enterAtomConfig() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_config", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id", this);
        }

        public IntColumnBuilder enterNumberAtomsAll() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number_atoms_all", this);
        }

        public IntColumnBuilder enterNumberAtomsNh() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number_atoms_nh", this);
        }

        public StrColumnBuilder enterVolumeFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "volume_flag", this);
        }

        public FloatColumnBuilder enterVolumeThree() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "volume_three", this);
        }

        public FloatColumnBuilder enterVolumeThreeEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "volume_three_esd", this);
        }

    }

    public static class ChemCompChirAtomBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "chem_comp_chir_atom";

        public ChemCompChirAtomBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id", this);
        }

        public StrColumnBuilder enterChirId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "chir_id", this);
        }

        public StrColumnBuilder enterCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id", this);
        }

        public FloatColumnBuilder enterDev() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "dev", this);
        }

    }

    public static class ChemCompLinkBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "chem_comp_link";

        public ChemCompLinkBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterLinkId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "link_id", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterTypeComp1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type_comp_1", this);
        }

        public StrColumnBuilder enterTypeComp2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type_comp_2", this);
        }

    }

    public static class ChemCompPlaneBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "chem_comp_plane";

        public ChemCompPlaneBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id", this);
        }

        public IntColumnBuilder enterNumberAtomsAll() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number_atoms_all", this);
        }

        public IntColumnBuilder enterNumberAtomsNh() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number_atoms_nh", this);
        }

    }

    public static class ChemCompPlaneAtomBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "chem_comp_plane_atom";

        public ChemCompPlaneAtomBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id", this);
        }

        public StrColumnBuilder enterCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id", this);
        }

        public StrColumnBuilder enterPlaneId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "plane_id", this);
        }

        public FloatColumnBuilder enterDistEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "dist_esd", this);
        }

    }

    public static class ChemCompTorBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "chem_comp_tor";

        public ChemCompTorBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterAtomId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id_1", this);
        }

        public StrColumnBuilder enterAtomId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id_2", this);
        }

        public StrColumnBuilder enterAtomId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id_3", this);
        }

        public StrColumnBuilder enterAtomId4() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id_4", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id", this);
        }

    }

    public static class ChemCompTorValueBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "chem_comp_tor_value";

        public ChemCompTorValueBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id", this);
        }

        public StrColumnBuilder enterTorId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "tor_id", this);
        }

        public FloatColumnBuilder enterAngle() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "angle", this);
        }

        public FloatColumnBuilder enterAngleEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "angle_esd", this);
        }

        public FloatColumnBuilder enterDist() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "dist", this);
        }

        public FloatColumnBuilder enterDistEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "dist_esd", this);
        }

    }

    public static class ChemLinkBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "chem_link";

        public ChemLinkBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class ChemLinkAngleBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "chem_link_angle";

        public ChemLinkAngleBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterAtom1CompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_1_comp_id", this);
        }

        public StrColumnBuilder enterAtom2CompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_2_comp_id", this);
        }

        public StrColumnBuilder enterAtom3CompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_3_comp_id", this);
        }

        public StrColumnBuilder enterAtomId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id_1", this);
        }

        public StrColumnBuilder enterAtomId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id_2", this);
        }

        public StrColumnBuilder enterAtomId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id_3", this);
        }

        public StrColumnBuilder enterLinkId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "link_id", this);
        }

        public FloatColumnBuilder enterValueAngle() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "value_angle", this);
        }

        public FloatColumnBuilder enterValueAngleEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "value_angle_esd", this);
        }

        public FloatColumnBuilder enterValueDist() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "value_dist", this);
        }

        public FloatColumnBuilder enterValueDistEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "value_dist_esd", this);
        }

    }

    public static class ChemLinkBondBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "chem_link_bond";

        public ChemLinkBondBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterAtom1CompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_1_comp_id", this);
        }

        public StrColumnBuilder enterAtom2CompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_2_comp_id", this);
        }

        public StrColumnBuilder enterAtomId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id_1", this);
        }

        public StrColumnBuilder enterAtomId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id_2", this);
        }

        public StrColumnBuilder enterLinkId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "link_id", this);
        }

        public FloatColumnBuilder enterValueDist() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "value_dist", this);
        }

        public FloatColumnBuilder enterValueDistEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "value_dist_esd", this);
        }

        public StrColumnBuilder enterValueOrder() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "value_order", this);
        }

    }

    public static class ChemLinkChirBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "chem_link_chir";

        public ChemLinkChirBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterAtomCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_comp_id", this);
        }

        public StrColumnBuilder enterAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id", this);
        }

        public StrColumnBuilder enterAtomConfig() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_config", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterLinkId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "link_id", this);
        }

        public IntColumnBuilder enterNumberAtomsAll() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number_atoms_all", this);
        }

        public IntColumnBuilder enterNumberAtomsNh() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number_atoms_nh", this);
        }

        public StrColumnBuilder enterVolumeFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "volume_flag", this);
        }

        public FloatColumnBuilder enterVolumeThree() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "volume_three", this);
        }

        public FloatColumnBuilder enterVolumeThreeEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "volume_three_esd", this);
        }

    }

    public static class ChemLinkChirAtomBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "chem_link_chir_atom";

        public ChemLinkChirAtomBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterAtomCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_comp_id", this);
        }

        public StrColumnBuilder enterAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id", this);
        }

        public StrColumnBuilder enterChirId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "chir_id", this);
        }

        public FloatColumnBuilder enterDev() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "dev", this);
        }

    }

    public static class ChemLinkPlaneBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "chem_link_plane";

        public ChemLinkPlaneBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterLinkId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "link_id", this);
        }

        public IntColumnBuilder enterNumberAtomsAll() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number_atoms_all", this);
        }

        public IntColumnBuilder enterNumberAtomsNh() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number_atoms_nh", this);
        }

    }

    public static class ChemLinkPlaneAtomBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "chem_link_plane_atom";

        public ChemLinkPlaneAtomBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterAtomCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_comp_id", this);
        }

        public StrColumnBuilder enterAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id", this);
        }

        public StrColumnBuilder enterPlaneId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "plane_id", this);
        }

    }

    public static class ChemLinkTorBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "chem_link_tor";

        public ChemLinkTorBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterAtom1CompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_1_comp_id", this);
        }

        public StrColumnBuilder enterAtom2CompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_2_comp_id", this);
        }

        public StrColumnBuilder enterAtom3CompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_3_comp_id", this);
        }

        public StrColumnBuilder enterAtom4CompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_4_comp_id", this);
        }

        public StrColumnBuilder enterAtomId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id_1", this);
        }

        public StrColumnBuilder enterAtomId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id_2", this);
        }

        public StrColumnBuilder enterAtomId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id_3", this);
        }

        public StrColumnBuilder enterAtomId4() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id_4", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterLinkId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "link_id", this);
        }

    }

    public static class ChemLinkTorValueBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "chem_link_tor_value";

        public ChemLinkTorValueBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterTorId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "tor_id", this);
        }

        public FloatColumnBuilder enterAngle() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "angle", this);
        }

        public FloatColumnBuilder enterAngleEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "angle_esd", this);
        }

        public FloatColumnBuilder enterDist() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "dist", this);
        }

        public FloatColumnBuilder enterDistEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "dist_esd", this);
        }

    }

    public static class ChemicalBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "chemical";

        public ChemicalBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterCompoundSource() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "compound_source", this);
        }

        public FloatColumnBuilder enterMeltingPoint() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "melting_point", this);
        }

        public StrColumnBuilder enterNameCommon() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name_common", this);
        }

        public StrColumnBuilder enterNameMineral() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name_mineral", this);
        }

        public StrColumnBuilder enterNameStructureType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name_structure_type", this);
        }

        public StrColumnBuilder enterNameSystematic() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name_systematic", this);
        }

        public StrColumnBuilder enterAbsoluteConfiguration() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "absolute_configuration", this);
        }

        public FloatColumnBuilder enterMeltingPointGt() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "melting_point_gt", this);
        }

        public FloatColumnBuilder enterMeltingPointLt() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "melting_point_lt", this);
        }

        public StrColumnBuilder enterOpticalRotation() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "optical_rotation", this);
        }

        public StrColumnBuilder enterPropertiesBiological() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "properties_biological", this);
        }

        public StrColumnBuilder enterPropertiesPhysical() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "properties_physical", this);
        }

        public FloatColumnBuilder enterTemperatureDecomposition() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "temperature_decomposition", this);
        }

        public FloatColumnBuilder enterTemperatureDecompositionEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "temperature_decomposition_esd", this);
        }

        public FloatColumnBuilder enterTemperatureDecompositionGt() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "temperature_decomposition_gt", this);
        }

        public FloatColumnBuilder enterTemperatureDecompositionLt() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "temperature_decomposition_lt", this);
        }

        public FloatColumnBuilder enterTemperatureSublimation() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "temperature_sublimation", this);
        }

        public FloatColumnBuilder enterTemperatureSublimationEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "temperature_sublimation_esd", this);
        }

        public FloatColumnBuilder enterTemperatureSublimationGt() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "temperature_sublimation_gt", this);
        }

        public FloatColumnBuilder enterTemperatureSublimationLt() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "temperature_sublimation_lt", this);
        }

    }

    public static class ChemicalConnAtomBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "chemical_conn_atom";

        public ChemicalConnAtomBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterCharge() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "charge", this);
        }

        public FloatColumnBuilder enterDisplayX() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "display_x", this);
        }

        public FloatColumnBuilder enterDisplayY() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "display_y", this);
        }

        public IntColumnBuilder enterNCA() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "NCA", this);
        }

        public IntColumnBuilder enterNH() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "NH", this);
        }

        public IntColumnBuilder enterNumber() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number", this);
        }

        public StrColumnBuilder enterTypeSymbol() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type_symbol", this);
        }

    }

    public static class ChemicalConnBondBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "chemical_conn_bond";

        public ChemicalConnBondBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterAtom1() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "atom_1", this);
        }

        public IntColumnBuilder enterAtom2() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "atom_2", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

    }

    public static class ChemicalFormulaBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "chemical_formula";

        public ChemicalFormulaBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterAnalytical() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "analytical", this);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterIupac() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "iupac", this);
        }

        public StrColumnBuilder enterMoiety() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "moiety", this);
        }

        public StrColumnBuilder enterStructural() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "structural", this);
        }

        public StrColumnBuilder enterSum() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "sum", this);
        }

        public FloatColumnBuilder enterWeight() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "weight", this);
        }

        public FloatColumnBuilder enterWeightMeas() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "weight_meas", this);
        }

    }

    public static class CitationBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "citation";

        public CitationBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterAbstract() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "abstract", this);
        }

        public StrColumnBuilder enterAbstractIdCAS() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "abstract_id_CAS", this);
        }

        public StrColumnBuilder enterBookIdISBN() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "book_id_ISBN", this);
        }

        public StrColumnBuilder enterBookPublisher() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "book_publisher", this);
        }

        public StrColumnBuilder enterBookPublisherCity() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "book_publisher_city", this);
        }

        public StrColumnBuilder enterBookTitle() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "book_title", this);
        }

        public StrColumnBuilder enterCoordinateLinkage() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "coordinate_linkage", this);
        }

        public StrColumnBuilder enterCountry() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "country", this);
        }

        public IntColumnBuilder enterDatabaseIdMedline() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "database_id_Medline", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterJournalAbbrev() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "journal_abbrev", this);
        }

        public StrColumnBuilder enterJournalIdASTM() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "journal_id_ASTM", this);
        }

        public StrColumnBuilder enterJournalIdCSD() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "journal_id_CSD", this);
        }

        public StrColumnBuilder enterJournalIdISSN() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "journal_id_ISSN", this);
        }

        public StrColumnBuilder enterJournalFull() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "journal_full", this);
        }

        public StrColumnBuilder enterJournalIssue() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "journal_issue", this);
        }

        public StrColumnBuilder enterJournalVolume() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "journal_volume", this);
        }

        public StrColumnBuilder enterLanguage() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "language", this);
        }

        public StrColumnBuilder enterPageFirst() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "page_first", this);
        }

        public StrColumnBuilder enterPageLast() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "page_last", this);
        }

        public StrColumnBuilder enterTitle() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "title", this);
        }

        public IntColumnBuilder enterYear() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "year", this);
        }

        public StrColumnBuilder enterDatabaseIdCSD() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "database_id_CSD", this);
        }

        public StrColumnBuilder enterPdbxDatabaseIdDOI() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_database_id_DOI", this);
        }

        public IntColumnBuilder enterPdbxDatabaseIdPubMed() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_database_id_PubMed", this);
        }

        public StrColumnBuilder enterPdbxDatabaseIdPatent() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_database_id_patent", this);
        }

        public StrColumnBuilder enterUnpublishedFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "unpublished_flag", this);
        }

    }

    public static class CitationAuthorBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "citation_author";

        public CitationAuthorBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterCitationId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "citation_id", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public IntColumnBuilder enterOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal", this);
        }

        public StrColumnBuilder enterIdentifierORCID() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "identifier_ORCID", this);
        }

    }

    public static class CitationEditorBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "citation_editor";

        public CitationEditorBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterCitationId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "citation_id", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public IntColumnBuilder enterOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal", this);
        }

    }

    public static class ComputingBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "computing";

        public ComputingBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterCellRefinement() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "cell_refinement", this);
        }

        public StrColumnBuilder enterDataCollection() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "data_collection", this);
        }

        public StrColumnBuilder enterDataReduction() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "data_reduction", this);
        }

        public StrColumnBuilder enterMolecularGraphics() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "molecular_graphics", this);
        }

        public StrColumnBuilder enterPublicationMaterial() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "publication_material", this);
        }

        public StrColumnBuilder enterStructureRefinement() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "structure_refinement", this);
        }

        public StrColumnBuilder enterStructureSolution() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "structure_solution", this);
        }

        public StrColumnBuilder enterPdbxStructureRefinementMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_structure_refinement_method", this);
        }

        public StrColumnBuilder enterPdbxDataReductionIi() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_data_reduction_ii", this);
        }

        public StrColumnBuilder enterPdbxDataReductionDs() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_data_reduction_ds", this);
        }

    }

    public static class DatabaseBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "database";

        public DatabaseBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterJournalASTM() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "journal_ASTM", this);
        }

        public StrColumnBuilder enterJournalCSD() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "journal_CSD", this);
        }

        public StrColumnBuilder enterCSDHistory() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "CSD_history", this);
        }

        public StrColumnBuilder enterCodeCAS() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "code_CAS", this);
        }

        public StrColumnBuilder enterCodeCSD() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "code_CSD", this);
        }

        public StrColumnBuilder enterCodeICSD() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "code_ICSD", this);
        }

        public StrColumnBuilder enterCodeMDF() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "code_MDF", this);
        }

        public StrColumnBuilder enterCodeNBS() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "code_NBS", this);
        }

        public StrColumnBuilder enterCodePDB() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "code_PDB", this);
        }

        public StrColumnBuilder enterCodePDF() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "code_PDF", this);
        }

        public StrColumnBuilder enterCodeDepnumCcdcFiz() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "code_depnum_ccdc_fiz", this);
        }

        public StrColumnBuilder enterCodeDepnumCcdcJournal() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "code_depnum_ccdc_journal", this);
        }

        public StrColumnBuilder enterCodeDepnumCcdcArchive() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "code_depnum_ccdc_archive", this);
        }

        public StrColumnBuilder enterPdbxCodeNDB() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_code_NDB", this);
        }

        public StrColumnBuilder enterPdbxCodePDB() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_code_PDB", this);
        }

        public StrColumnBuilder enterPdbxRelatedCodesPDB() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_related_codes_PDB", this);
        }

    }

    public static class Database2Builder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "database_2";

        public Database2Builder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDatabaseId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "database_id", this);
        }

        public StrColumnBuilder enterDatabaseCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "database_code", this);
        }

        public StrColumnBuilder enterPdbxDatabaseAccession() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_database_accession", this);
        }

        public StrColumnBuilder enterPdbxDOI() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_DOI", this);
        }

    }

    public static class DatabasePDBCaveatBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "database_PDB_caveat";

        public DatabasePDBCaveatBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterText() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "text", this);
        }

    }

    public static class DatabasePDBMatrixBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "database_PDB_matrix";

        public DatabasePDBMatrixBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public FloatColumnBuilder enterOrigx11() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "origx[1][1]", this);
        }

        public FloatColumnBuilder enterOrigx12() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "origx[1][2]", this);
        }

        public FloatColumnBuilder enterOrigx13() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "origx[1][3]", this);
        }

        public FloatColumnBuilder enterOrigx21() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "origx[2][1]", this);
        }

        public FloatColumnBuilder enterOrigx22() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "origx[2][2]", this);
        }

        public FloatColumnBuilder enterOrigx23() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "origx[2][3]", this);
        }

        public FloatColumnBuilder enterOrigx31() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "origx[3][1]", this);
        }

        public FloatColumnBuilder enterOrigx32() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "origx[3][2]", this);
        }

        public FloatColumnBuilder enterOrigx33() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "origx[3][3]", this);
        }

        public FloatColumnBuilder enterOrigxVector1() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "origx_vector[1]", this);
        }

        public FloatColumnBuilder enterOrigxVector2() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "origx_vector[2]", this);
        }

        public FloatColumnBuilder enterOrigxVector3() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "origx_vector[3]", this);
        }

        public FloatColumnBuilder enterScale11() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "scale[1][1]", this);
        }

        public FloatColumnBuilder enterScale12() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "scale[1][2]", this);
        }

        public FloatColumnBuilder enterScale13() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "scale[1][3]", this);
        }

        public FloatColumnBuilder enterScale21() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "scale[2][1]", this);
        }

        public FloatColumnBuilder enterScale22() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "scale[2][2]", this);
        }

        public FloatColumnBuilder enterScale23() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "scale[2][3]", this);
        }

        public FloatColumnBuilder enterScale31() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "scale[3][1]", this);
        }

        public FloatColumnBuilder enterScale32() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "scale[3][2]", this);
        }

        public FloatColumnBuilder enterScale33() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "scale[3][3]", this);
        }

        public FloatColumnBuilder enterScaleVector1() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "scale_vector[1]", this);
        }

        public FloatColumnBuilder enterScaleVector2() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "scale_vector[2]", this);
        }

        public FloatColumnBuilder enterScaleVector3() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "scale_vector[3]", this);
        }

    }

    public static class DatabasePDBRemarkBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "database_PDB_remark";

        public DatabasePDBRemarkBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterText() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "text", this);
        }

    }

    public static class DatabasePDBRevBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "database_PDB_rev";

        public DatabasePDBRevBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterAuthorName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "author_name", this);
        }

        public StrColumnBuilder enterDate() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date", this);
        }

        public StrColumnBuilder enterDateOriginal() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date_original", this);
        }

        public StrColumnBuilder enterModType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "mod_type", this);
        }

        public IntColumnBuilder enterNum() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num", this);
        }

        public StrColumnBuilder enterReplacedBy() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "replaced_by", this);
        }

        public StrColumnBuilder enterReplaces() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "replaces", this);
        }

        public StrColumnBuilder enterStatus() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "status", this);
        }

        public StrColumnBuilder enterPdbxRecordRevised1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_record_revised_1", this);
        }

        public StrColumnBuilder enterPdbxRecordRevised2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_record_revised_2", this);
        }

        public StrColumnBuilder enterPdbxRecordRevised3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_record_revised_3", this);
        }

        public StrColumnBuilder enterPdbxRecordRevised4() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_record_revised_4", this);
        }

    }

    public static class DatabasePDBRevRecordBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "database_PDB_rev_record";

        public DatabasePDBRevRecordBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public IntColumnBuilder enterRevNum() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "rev_num", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

    }

    public static class DatabasePDBTvectBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "database_PDB_tvect";

        public DatabasePDBTvectBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public FloatColumnBuilder enterVector1() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "vector[1]", this);
        }

        public FloatColumnBuilder enterVector2() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "vector[2]", this);
        }

        public FloatColumnBuilder enterVector3() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "vector[3]", this);
        }

    }

    public static class DiffrnBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "diffrn";

        public DiffrnBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterAmbientEnvironment() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ambient_environment", this);
        }

        public FloatColumnBuilder enterAmbientTemp() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ambient_temp", this);
        }

        public StrColumnBuilder enterAmbientTempDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ambient_temp_details", this);
        }

        public FloatColumnBuilder enterAmbientTempEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ambient_temp_esd", this);
        }

        public StrColumnBuilder enterCrystalId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "crystal_id", this);
        }

        public StrColumnBuilder enterCrystalSupport() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "crystal_support", this);
        }

        public StrColumnBuilder enterCrystalTreatment() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "crystal_treatment", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public FloatColumnBuilder enterAmbientPressure() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ambient_pressure", this);
        }

        public FloatColumnBuilder enterAmbientPressureEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ambient_pressure_esd", this);
        }

        public FloatColumnBuilder enterAmbientPressureGt() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ambient_pressure_gt", this);
        }

        public FloatColumnBuilder enterAmbientPressureLt() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ambient_pressure_lt", this);
        }

        public FloatColumnBuilder enterAmbientTempGt() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ambient_temp_gt", this);
        }

        public FloatColumnBuilder enterAmbientTempLt() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ambient_temp_lt", this);
        }

        public StrColumnBuilder enterPdbxSerialCrystalExperiment() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_serial_crystal_experiment", this);
        }

    }

    public static class DiffrnAttenuatorBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "diffrn_attenuator";

        public DiffrnAttenuatorBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "code", this);
        }

        public FloatColumnBuilder enterScale() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "scale", this);
        }

        public StrColumnBuilder enterMaterial() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "material", this);
        }

    }

    public static class DiffrnDetectorBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "diffrn_detector";

        public DiffrnDetectorBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterDetector() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "detector", this);
        }

        public StrColumnBuilder enterDiffrnId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "diffrn_id", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public FloatColumnBuilder enterAreaResolMean() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "area_resol_mean", this);
        }

        public FloatColumnBuilder enterDtime() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "dtime", this);
        }

        public IntColumnBuilder enterPdbxFramesTotal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_frames_total", this);
        }

        public FloatColumnBuilder enterPdbxCollectionTimeTotal() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_collection_time_total", this);
        }

        public StrColumnBuilder enterPdbxCollectionDate() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_collection_date", this);
        }

        public FloatColumnBuilder enterPdbxFrequency() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_frequency", this);
        }

    }

    public static class DiffrnMeasurementBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "diffrn_measurement";

        public DiffrnMeasurementBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDiffrnId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "diffrn_id", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterDevice() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "device", this);
        }

        public StrColumnBuilder enterDeviceDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "device_details", this);
        }

        public StrColumnBuilder enterDeviceType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "device_type", this);
        }

        public StrColumnBuilder enterMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "method", this);
        }

        public StrColumnBuilder enterSpecimenSupport() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "specimen_support", this);
        }

        public StrColumnBuilder enterPdbxDate() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_date", this);
        }

    }

    public static class DiffrnOrientMatrixBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "diffrn_orient_matrix";

        public DiffrnOrientMatrixBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDiffrnId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "diffrn_id", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public FloatColumnBuilder enterUB11() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "UB[1][1]", this);
        }

        public FloatColumnBuilder enterUB12() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "UB[1][2]", this);
        }

        public FloatColumnBuilder enterUB13() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "UB[1][3]", this);
        }

        public FloatColumnBuilder enterUB21() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "UB[2][1]", this);
        }

        public FloatColumnBuilder enterUB22() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "UB[2][2]", this);
        }

        public FloatColumnBuilder enterUB23() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "UB[2][3]", this);
        }

        public FloatColumnBuilder enterUB31() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "UB[3][1]", this);
        }

        public FloatColumnBuilder enterUB32() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "UB[3][2]", this);
        }

        public FloatColumnBuilder enterUB33() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "UB[3][3]", this);
        }

    }

    public static class DiffrnOrientReflnBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "diffrn_orient_refln";

        public DiffrnOrientReflnBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public FloatColumnBuilder enterAngleChi() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "angle_chi", this);
        }

        public FloatColumnBuilder enterAngleKappa() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "angle_kappa", this);
        }

        public FloatColumnBuilder enterAngleOmega() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "angle_omega", this);
        }

        public FloatColumnBuilder enterAnglePhi() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "angle_phi", this);
        }

        public FloatColumnBuilder enterAnglePsi() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "angle_psi", this);
        }

        public FloatColumnBuilder enterAngleTheta() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "angle_theta", this);
        }

        public StrColumnBuilder enterDiffrnId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "diffrn_id", this);
        }

        public IntColumnBuilder enterIndexH() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "index_h", this);
        }

        public IntColumnBuilder enterIndexK() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "index_k", this);
        }

        public IntColumnBuilder enterIndexL() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "index_l", this);
        }

    }

    public static class DiffrnRadiationBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "diffrn_radiation";

        public DiffrnRadiationBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterCollimation() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "collimation", this);
        }

        public StrColumnBuilder enterDiffrnId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "diffrn_id", this);
        }

        public FloatColumnBuilder enterFilterEdge() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "filter_edge", this);
        }

        public FloatColumnBuilder enterInhomogeneity() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "inhomogeneity", this);
        }

        public StrColumnBuilder enterMonochromator() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "monochromator", this);
        }

        public FloatColumnBuilder enterPolarisnNorm() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "polarisn_norm", this);
        }

        public FloatColumnBuilder enterPolarisnRatio() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "polarisn_ratio", this);
        }

        public StrColumnBuilder enterProbe() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "probe", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public StrColumnBuilder enterXraySymbol() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "xray_symbol", this);
        }

        public StrColumnBuilder enterWavelengthId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "wavelength_id", this);
        }

        public StrColumnBuilder enterPdbxMonochromaticOrLaueML() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_monochromatic_or_laue_m_l", this);
        }

        public StrColumnBuilder enterPdbxWavelengthList() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_wavelength_list", this);
        }

        public StrColumnBuilder enterPdbxWavelength() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_wavelength", this);
        }

        public StrColumnBuilder enterPdbxDiffrnProtocol() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_diffrn_protocol", this);
        }

        public StrColumnBuilder enterPdbxAnalyzer() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_analyzer", this);
        }

        public StrColumnBuilder enterPdbxScatteringType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_scattering_type", this);
        }

    }

    public static class DiffrnRadiationWavelengthBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "diffrn_radiation_wavelength";

        public DiffrnRadiationWavelengthBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public FloatColumnBuilder enterWavelength() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "wavelength", this);
        }

        public FloatColumnBuilder enterWt() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "wt", this);
        }

    }

    public static class DiffrnReflnBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "diffrn_refln";

        public DiffrnReflnBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public FloatColumnBuilder enterAngleChi() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "angle_chi", this);
        }

        public FloatColumnBuilder enterAngleKappa() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "angle_kappa", this);
        }

        public FloatColumnBuilder enterAngleOmega() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "angle_omega", this);
        }

        public FloatColumnBuilder enterAnglePhi() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "angle_phi", this);
        }

        public FloatColumnBuilder enterAnglePsi() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "angle_psi", this);
        }

        public FloatColumnBuilder enterAngleTheta() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "angle_theta", this);
        }

        public StrColumnBuilder enterAttenuatorCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "attenuator_code", this);
        }

        public IntColumnBuilder enterCountsBg1() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "counts_bg_1", this);
        }

        public IntColumnBuilder enterCountsBg2() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "counts_bg_2", this);
        }

        public IntColumnBuilder enterCountsNet() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "counts_net", this);
        }

        public IntColumnBuilder enterCountsPeak() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "counts_peak", this);
        }

        public IntColumnBuilder enterCountsTotal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "counts_total", this);
        }

        public FloatColumnBuilder enterDetectSlitHoriz() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "detect_slit_horiz", this);
        }

        public FloatColumnBuilder enterDetectSlitVert() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "detect_slit_vert", this);
        }

        public StrColumnBuilder enterDiffrnId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "diffrn_id", this);
        }

        public FloatColumnBuilder enterElapsedTime() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "elapsed_time", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterIndexH() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "index_h", this);
        }

        public IntColumnBuilder enterIndexK() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "index_k", this);
        }

        public IntColumnBuilder enterIndexL() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "index_l", this);
        }

        public FloatColumnBuilder enterIntensityNet() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "intensity_net", this);
        }

        public FloatColumnBuilder enterIntensitySigma() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "intensity_sigma", this);
        }

        public StrColumnBuilder enterScaleGroupCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "scale_group_code", this);
        }

        public StrColumnBuilder enterScanMode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "scan_mode", this);
        }

        public StrColumnBuilder enterScanModeBackgd() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "scan_mode_backgd", this);
        }

        public FloatColumnBuilder enterScanRate() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "scan_rate", this);
        }

        public FloatColumnBuilder enterScanTimeBackgd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "scan_time_backgd", this);
        }

        public FloatColumnBuilder enterScanWidth() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "scan_width", this);
        }

        public FloatColumnBuilder enterSintOverLambda() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "sint_over_lambda", this);
        }

        public StrColumnBuilder enterStandardCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "standard_code", this);
        }

        public FloatColumnBuilder enterWavelength() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "wavelength", this);
        }

        public StrColumnBuilder enterWavelengthId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "wavelength_id", this);
        }

        public IntColumnBuilder enterPdbxImageId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_image_id", this);
        }

        public FloatColumnBuilder enterPdbxScanAngle() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_scan_angle", this);
        }

        public StrColumnBuilder enterClassCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "class_code", this);
        }

        public FloatColumnBuilder enterIntensityU() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "intensity_u", this);
        }

        public FloatColumnBuilder enterPdbxDetectorX() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_detector_x", this);
        }

        public FloatColumnBuilder enterPdbxDetectorY() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_detector_y", this);
        }

        public FloatColumnBuilder enterPdbxRotationAngle() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_rotation_angle", this);
        }

        public FloatColumnBuilder enterPdbxScaleValue() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_scale_value", this);
        }

    }

    public static class DiffrnReflnsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "diffrn_reflns";

        public DiffrnReflnsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public FloatColumnBuilder enterAvREquivalents() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "av_R_equivalents", this);
        }

        public FloatColumnBuilder enterAvSigmaIOverNetI() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "av_sigmaI_over_netI", this);
        }

        public StrColumnBuilder enterDiffrnId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "diffrn_id", this);
        }

        public IntColumnBuilder enterLimitHMax() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "limit_h_max", this);
        }

        public IntColumnBuilder enterLimitHMin() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "limit_h_min", this);
        }

        public IntColumnBuilder enterLimitKMax() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "limit_k_max", this);
        }

        public IntColumnBuilder enterLimitKMin() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "limit_k_min", this);
        }

        public IntColumnBuilder enterLimitLMax() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "limit_l_max", this);
        }

        public IntColumnBuilder enterLimitLMin() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "limit_l_min", this);
        }

        public IntColumnBuilder enterNumber() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number", this);
        }

        public StrColumnBuilder enterReductionProcess() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "reduction_process", this);
        }

        public FloatColumnBuilder enterThetaMax() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "theta_max", this);
        }

        public FloatColumnBuilder enterThetaMin() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "theta_min", this);
        }

        public FloatColumnBuilder enterTransfMatrix11() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "transf_matrix[1][1]", this);
        }

        public FloatColumnBuilder enterTransfMatrix12() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "transf_matrix[1][2]", this);
        }

        public FloatColumnBuilder enterTransfMatrix13() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "transf_matrix[1][3]", this);
        }

        public FloatColumnBuilder enterTransfMatrix21() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "transf_matrix[2][1]", this);
        }

        public FloatColumnBuilder enterTransfMatrix22() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "transf_matrix[2][2]", this);
        }

        public FloatColumnBuilder enterTransfMatrix23() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "transf_matrix[2][3]", this);
        }

        public FloatColumnBuilder enterTransfMatrix31() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "transf_matrix[3][1]", this);
        }

        public FloatColumnBuilder enterTransfMatrix32() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "transf_matrix[3][2]", this);
        }

        public FloatColumnBuilder enterTransfMatrix33() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "transf_matrix[3][3]", this);
        }

        public FloatColumnBuilder enterAvUnetI_netI() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "av_unetI/netI", this);
        }

        public FloatColumnBuilder enterPdbxDResLow() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_d_res_low", this);
        }

        public FloatColumnBuilder enterPdbxDResHigh() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_d_res_high", this);
        }

        public FloatColumnBuilder enterPdbxPercentPossibleObs() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_percent_possible_obs", this);
        }

        public FloatColumnBuilder enterPdbxRmergeIObs() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_Rmerge_I_obs", this);
        }

        public FloatColumnBuilder enterPdbxRsymValue() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_Rsym_value", this);
        }

        public FloatColumnBuilder enterPdbxChiSquared() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_chi_squared", this);
        }

        public FloatColumnBuilder enterPdbxRedundancy() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_redundancy", this);
        }

        public IntColumnBuilder enterPdbxRejects() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_rejects", this);
        }

        public FloatColumnBuilder enterPdbxObservedCriterion() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_observed_criterion", this);
        }

        public IntColumnBuilder enterPdbxNumberObs() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_number_obs", this);
        }

    }

    public static class DiffrnScaleGroupBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "diffrn_scale_group";

        public DiffrnScaleGroupBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "code", this);
        }

        public FloatColumnBuilder enterINet() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "I_net", this);
        }

    }

    public static class DiffrnSourceBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "diffrn_source";

        public DiffrnSourceBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public FloatColumnBuilder enterCurrent() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "current", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterDiffrnId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "diffrn_id", this);
        }

        public FloatColumnBuilder enterPower() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "power", this);
        }

        public StrColumnBuilder enterSize() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "size", this);
        }

        public StrColumnBuilder enterSource() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "source", this);
        }

        public StrColumnBuilder enterTarget() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "target", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public FloatColumnBuilder enterVoltage() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "voltage", this);
        }

        public FloatColumnBuilder enterTake_offAngle() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "take-off_angle", this);
        }

        public StrColumnBuilder enterPdbxWavelengthList() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_wavelength_list", this);
        }

        public StrColumnBuilder enterPdbxWavelength() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_wavelength", this);
        }

        public StrColumnBuilder enterPdbxSynchrotronBeamline() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_synchrotron_beamline", this);
        }

        public StrColumnBuilder enterPdbxSynchrotronSite() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_synchrotron_site", this);
        }

        public StrColumnBuilder enterPdbxSynchrotronYN() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_synchrotron_y_n", this);
        }

        public StrColumnBuilder enterPdbxSourceSpecificBeamline() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_source_specific_beamline", this);
        }

    }

    public static class DiffrnStandardReflnBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "diffrn_standard_refln";

        public DiffrnStandardReflnBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "code", this);
        }

        public StrColumnBuilder enterDiffrnId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "diffrn_id", this);
        }

        public IntColumnBuilder enterIndexH() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "index_h", this);
        }

        public IntColumnBuilder enterIndexK() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "index_k", this);
        }

        public IntColumnBuilder enterIndexL() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "index_l", this);
        }

    }

    public static class DiffrnStandardsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "diffrn_standards";

        public DiffrnStandardsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDiffrnId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "diffrn_id", this);
        }

        public FloatColumnBuilder enterDecay() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "decay_%", this);
        }

        public IntColumnBuilder enterIntervalCount() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "interval_count", this);
        }

        public FloatColumnBuilder enterIntervalTime() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "interval_time", this);
        }

        public IntColumnBuilder enterNumber() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number", this);
        }

        public FloatColumnBuilder enterScaleSigma() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "scale_sigma", this);
        }

        public FloatColumnBuilder enterScaleU() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "scale_u", this);
        }

    }

    public static class EntityBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "entity";

        public EntityBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public FloatColumnBuilder enterFormulaWeight() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "formula_weight", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterSrcMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "src_method", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public StrColumnBuilder enterPdbxDescription() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_description", this);
        }

        public IntColumnBuilder enterPdbxNumberOfMolecules() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_number_of_molecules", this);
        }

        public StrColumnBuilder enterPdbxParentEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_parent_entity_id", this);
        }

        public StrColumnBuilder enterPdbxMutation() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_mutation", this);
        }

        public StrColumnBuilder enterPdbxFragment() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_fragment", this);
        }

        public StrColumnBuilder enterPdbxEc() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_ec", this);
        }

        public StrColumnBuilder enterPdbxModification() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_modification", this);
        }

        public FloatColumnBuilder enterPdbxFormulaWeightExptl() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_formula_weight_exptl", this);
        }

        public StrColumnBuilder enterPdbxFormulaWeightExptlMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_formula_weight_exptl_method", this);
        }

        public StrColumnBuilder enterPdbxTargetId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_target_id", this);
        }

        public FloatColumnBuilder enterPdbxEntitiesPerBiologicalUnit() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_entities_per_biological_unit", this);
        }

    }

    public static class EntityKeywordsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "entity_keywords";

        public EntityKeywordsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public StrColumnBuilder enterText() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "text", this);
        }

        public StrColumnBuilder enterPdbxMutation() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_mutation", this);
        }

        public StrColumnBuilder enterPdbxFragment() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_fragment", this);
        }

        public StrColumnBuilder enterPdbxEc() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_ec", this);
        }

        public StrColumnBuilder enterPdbxAntibodyIsotype() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_antibody_isotype", this);
        }

    }

    public static class EntityLinkBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "entity_link";

        public EntityLinkBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterLinkId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "link_id", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterEntityId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id_1", this);
        }

        public StrColumnBuilder enterEntityId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id_2", this);
        }

        public IntColumnBuilder enterEntitySeqNum1() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "entity_seq_num_1", this);
        }

        public IntColumnBuilder enterEntitySeqNum2() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "entity_seq_num_2", this);
        }

    }

    public static class EntityNameComBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "entity_name_com";

        public EntityNameComBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public StrColumnBuilder enterPdbxProvenance() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_provenance", this);
        }

    }

    public static class EntityNameSysBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "entity_name_sys";

        public EntityNameSysBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public StrColumnBuilder enterSystem() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "system", this);
        }

    }

    public static class EntityPolyBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "entity_poly";

        public EntityPolyBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public StrColumnBuilder enterNstdChirality() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "nstd_chirality", this);
        }

        public StrColumnBuilder enterNstdLinkage() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "nstd_linkage", this);
        }

        public StrColumnBuilder enterNstdMonomer() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "nstd_monomer", this);
        }

        public IntColumnBuilder enterNumberOfMonomers() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number_of_monomers", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public StrColumnBuilder enterTypeDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type_details", this);
        }

        public StrColumnBuilder enterPdbxStrandId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_strand_id", this);
        }

        public StrColumnBuilder enterPdbxSeqOneLetterCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_seq_one_letter_code", this);
        }

        public StrColumnBuilder enterPdbxSeqOneLetterCodeCan() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_seq_one_letter_code_can", this);
        }

        public StrColumnBuilder enterPdbxTargetIdentifier() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_target_identifier", this);
        }

        public StrColumnBuilder enterPdbxSeqOneLetterCodeSample() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_seq_one_letter_code_sample", this);
        }

        public StrColumnBuilder enterPdbxExplicitLinkingFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_explicit_linking_flag", this);
        }

        public StrColumnBuilder enterPdbxSequenceEvidenceCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_sequence_evidence_code", this);
        }

        public StrColumnBuilder enterPdbxBuildSelfReference() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_build_self_reference", this);
        }

        public StrColumnBuilder enterPdbxNTerminalSeqOneLetterCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_N_terminal_seq_one_letter_code", this);
        }

        public StrColumnBuilder enterPdbxCTerminalSeqOneLetterCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_C_terminal_seq_one_letter_code", this);
        }

        public StrColumnBuilder enterPdbxSeqThreeLetterCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_seq_three_letter_code", this);
        }

        public StrColumnBuilder enterPdbxSeqDbName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_seq_db_name", this);
        }

        public StrColumnBuilder enterPdbxSeqDbId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_seq_db_id", this);
        }

        public IntColumnBuilder enterPdbxSeqAlignBegin() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_seq_align_begin", this);
        }

        public IntColumnBuilder enterPdbxSeqAlignEnd() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_seq_align_end", this);
        }

    }

    public static class EntityPolySeqBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "entity_poly_seq";

        public EntityPolySeqBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public StrColumnBuilder enterHetero() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "hetero", this);
        }

        public StrColumnBuilder enterMonId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "mon_id", this);
        }

        public IntColumnBuilder enterNum() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num", this);
        }

    }

    public static class EntryBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "entry";

        public EntryBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterPdbxDOI() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_DOI", this);
        }

        public StrColumnBuilder enterMaCollectionId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ma_collection_id", this);
        }

    }

    public static class EntryLinkBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "entry_link";

        public EntryLinkBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class ExptlBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "exptl";

        public ExptlBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public FloatColumnBuilder enterAbsorptCoefficientMu() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "absorpt_coefficient_mu", this);
        }

        public FloatColumnBuilder enterAbsorptCorrectionTMax() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "absorpt_correction_T_max", this);
        }

        public FloatColumnBuilder enterAbsorptCorrectionTMin() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "absorpt_correction_T_min", this);
        }

        public StrColumnBuilder enterAbsorptCorrectionType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "absorpt_correction_type", this);
        }

        public StrColumnBuilder enterAbsorptProcessDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "absorpt_process_details", this);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public IntColumnBuilder enterCrystalsNumber() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "crystals_number", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "method", this);
        }

        public StrColumnBuilder enterMethodDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "method_details", this);
        }

    }

    public static class ExptlCrystalBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "exptl_crystal";

        public ExptlCrystalBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterColour() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "colour", this);
        }

        public FloatColumnBuilder enterDensityDiffrn() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "density_diffrn", this);
        }

        public FloatColumnBuilder enterDensityMatthews() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "density_Matthews", this);
        }

        public StrColumnBuilder enterDensityMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "density_method", this);
        }

        public FloatColumnBuilder enterDensityPercentSol() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "density_percent_sol", this);
        }

        public StrColumnBuilder enterDescription() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "description", this);
        }

        public IntColumnBuilder enterF000() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "F_000", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterPreparation() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "preparation", this);
        }

        public FloatColumnBuilder enterSizeMax() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "size_max", this);
        }

        public FloatColumnBuilder enterSizeMid() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "size_mid", this);
        }

        public FloatColumnBuilder enterSizeMin() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "size_min", this);
        }

        public FloatColumnBuilder enterSizeRad() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "size_rad", this);
        }

        public StrColumnBuilder enterColourLustre() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "colour_lustre", this);
        }

        public StrColumnBuilder enterColourModifier() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "colour_modifier", this);
        }

        public StrColumnBuilder enterColourPrimary() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "colour_primary", this);
        }

        public FloatColumnBuilder enterDensityMeas() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "density_meas", this);
        }

        public FloatColumnBuilder enterDensityMeasEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "density_meas_esd", this);
        }

        public FloatColumnBuilder enterDensityMeasGt() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "density_meas_gt", this);
        }

        public FloatColumnBuilder enterDensityMeasLt() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "density_meas_lt", this);
        }

        public FloatColumnBuilder enterDensityMeasTemp() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "density_meas_temp", this);
        }

        public FloatColumnBuilder enterDensityMeasTempEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "density_meas_temp_esd", this);
        }

        public FloatColumnBuilder enterDensityMeasTempGt() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "density_meas_temp_gt", this);
        }

        public FloatColumnBuilder enterDensityMeasTempLt() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "density_meas_temp_lt", this);
        }

        public StrColumnBuilder enterPdbxCrystalImageUrl() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_crystal_image_url", this);
        }

        public StrColumnBuilder enterPdbxCrystalImageFormat() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_crystal_image_format", this);
        }

        public FloatColumnBuilder enterPdbxMosaicity() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_mosaicity", this);
        }

        public FloatColumnBuilder enterPdbxMosaicityEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_mosaicity_esd", this);
        }

        public StrColumnBuilder enterPdbxCrystalImage() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_crystal_image", this);
        }

        public StrColumnBuilder enterPdbxX_rayImage() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_x-ray_image", this);
        }

        public StrColumnBuilder enterPdbxX_rayImageType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_x-ray_image_type", this);
        }

        public FloatColumnBuilder enterPdbxCrystalDiffrnLimit() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_crystal_diffrn_limit", this);
        }

        public FloatColumnBuilder enterPdbxCrystalDiffrnLifetime() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_crystal_diffrn_lifetime", this);
        }

        public FloatColumnBuilder enterPdbxCrystalDirection1() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_crystal_direction_1", this);
        }

        public FloatColumnBuilder enterPdbxCrystalDirection2() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_crystal_direction_2", this);
        }

        public FloatColumnBuilder enterPdbxCrystalDirection3() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_crystal_direction_3", this);
        }

        public StrColumnBuilder enterPdbxMosaicMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_mosaic_method", this);
        }

        public FloatColumnBuilder enterPdbxMosaicBlockSize() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_mosaic_block_size", this);
        }

        public FloatColumnBuilder enterPdbxMosaicBlockSizeEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_mosaic_block_size_esd", this);
        }

    }

    public static class ExptlCrystalFaceBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "exptl_crystal_face";

        public ExptlCrystalFaceBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterCrystalId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "crystal_id", this);
        }

        public FloatColumnBuilder enterDiffrChi() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "diffr_chi", this);
        }

        public FloatColumnBuilder enterDiffrKappa() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "diffr_kappa", this);
        }

        public FloatColumnBuilder enterDiffrPhi() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "diffr_phi", this);
        }

        public FloatColumnBuilder enterDiffrPsi() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "diffr_psi", this);
        }

        public IntColumnBuilder enterIndexH() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "index_h", this);
        }

        public IntColumnBuilder enterIndexK() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "index_k", this);
        }

        public IntColumnBuilder enterIndexL() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "index_l", this);
        }

        public FloatColumnBuilder enterPerpDist() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "perp_dist", this);
        }

    }

    public static class ExptlCrystalGrowBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "exptl_crystal_grow";

        public ExptlCrystalGrowBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterApparatus() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "apparatus", this);
        }

        public StrColumnBuilder enterAtmosphere() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atmosphere", this);
        }

        public StrColumnBuilder enterCrystalId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "crystal_id", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "method", this);
        }

        public StrColumnBuilder enterMethodRef() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "method_ref", this);
        }

        public FloatColumnBuilder enterPH() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pH", this);
        }

        public FloatColumnBuilder enterPressure() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pressure", this);
        }

        public FloatColumnBuilder enterPressureEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pressure_esd", this);
        }

        public StrColumnBuilder enterSeeding() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "seeding", this);
        }

        public StrColumnBuilder enterSeedingRef() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "seeding_ref", this);
        }

        public StrColumnBuilder enterTempDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "temp_details", this);
        }

        public FloatColumnBuilder enterTempEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "temp_esd", this);
        }

        public StrColumnBuilder enterTime() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "time", this);
        }

        public StrColumnBuilder enterPdbxDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_details", this);
        }

        public StrColumnBuilder enterPdbxPHRange() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_pH_range", this);
        }

        public FloatColumnBuilder enterTemp() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "temp", this);
        }

    }

    public static class ExptlCrystalGrowCompBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "exptl_crystal_grow_comp";

        public ExptlCrystalGrowCompBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterConc() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "conc", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterCrystalId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "crystal_id", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public StrColumnBuilder enterSolId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "sol_id", this);
        }

        public StrColumnBuilder enterVolume() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "volume", this);
        }

        public StrColumnBuilder enterPdbxConcFinal() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_conc_final", this);
        }

        public StrColumnBuilder enterPdbxBath() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_bath", this);
        }

        public StrColumnBuilder enterPdbxSalt() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_salt", this);
        }

        public StrColumnBuilder enterPdbxSoakSalt() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_soak_salt", this);
        }

        public StrColumnBuilder enterPdbxSoakSolv() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_soak_solv", this);
        }

        public StrColumnBuilder enterPdbxSolv() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_solv", this);
        }

    }

    public static class GeomBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "geom";

        public GeomBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class GeomAngleBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "geom_angle";

        public GeomAngleBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterAtomSiteId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAltId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_alt_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAtomId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_atom_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteLabelCompId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_comp_id_1", this);
        }

        public IntColumnBuilder enterAtomSiteLabelSeqId1() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_seq_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAsymId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_asym_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAltId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_alt_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAtomId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_atom_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteLabelCompId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_comp_id_2", this);
        }

        public IntColumnBuilder enterAtomSiteLabelSeqId2() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_seq_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAsymId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_asym_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_id_3", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAltId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_alt_id_3", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAtomId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_atom_id_3", this);
        }

        public StrColumnBuilder enterAtomSiteLabelCompId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_comp_id_3", this);
        }

        public IntColumnBuilder enterAtomSiteLabelSeqId3() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_seq_id_3", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAsymId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_asym_id_3", this);
        }

        public StrColumnBuilder enterAtomSiteAuthAsymId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_asym_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteAuthAtomId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_atom_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteAuthCompId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_comp_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteAuthSeqId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_seq_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteAuthAtomId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_atom_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteAuthAsymId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_asym_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteAuthCompId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_comp_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteAuthSeqId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_seq_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteAuthAtomId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_atom_id_3", this);
        }

        public StrColumnBuilder enterAtomSiteAuthAsymId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_asym_id_3", this);
        }

        public StrColumnBuilder enterAtomSiteAuthCompId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_comp_id_3", this);
        }

        public StrColumnBuilder enterAtomSiteAuthSeqId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_seq_id_3", this);
        }

        public StrColumnBuilder enterPublFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "publ_flag", this);
        }

        public StrColumnBuilder enterSiteSymmetry1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "site_symmetry_1", this);
        }

        public StrColumnBuilder enterSiteSymmetry2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "site_symmetry_2", this);
        }

        public StrColumnBuilder enterSiteSymmetry3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "site_symmetry_3", this);
        }

        public FloatColumnBuilder enterValue() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "value", this);
        }

        public FloatColumnBuilder enterValueEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "value_esd", this);
        }

        public StrColumnBuilder enterPdbxAtomSitePDBInsCode1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_atom_site_PDB_ins_code_1", this);
        }

        public StrColumnBuilder enterPdbxAtomSitePDBInsCode2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_atom_site_PDB_ins_code_2", this);
        }

        public StrColumnBuilder enterPdbxAtomSitePDBInsCode3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_atom_site_PDB_ins_code_3", this);
        }

        public IntColumnBuilder enterPdbxPDBModelNum() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_PDB_model_num", this);
        }

    }

    public static class GeomBondBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "geom_bond";

        public GeomBondBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterAtomSiteId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAltId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_alt_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAtomId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_atom_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteLabelCompId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_comp_id_1", this);
        }

        public IntColumnBuilder enterAtomSiteLabelSeqId1() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_seq_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAsymId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_asym_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAltId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_alt_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAtomId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_atom_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteLabelCompId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_comp_id_2", this);
        }

        public IntColumnBuilder enterAtomSiteLabelSeqId2() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_seq_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAsymId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_asym_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteAuthAtomId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_atom_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteAuthAsymId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_asym_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteAuthCompId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_comp_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteAuthSeqId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_seq_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteAuthAtomId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_atom_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteAuthAsymId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_asym_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteAuthCompId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_comp_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteAuthSeqId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_seq_id_2", this);
        }

        public FloatColumnBuilder enterDist() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "dist", this);
        }

        public FloatColumnBuilder enterDistEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "dist_esd", this);
        }

        public StrColumnBuilder enterPublFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "publ_flag", this);
        }

        public StrColumnBuilder enterSiteSymmetry1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "site_symmetry_1", this);
        }

        public StrColumnBuilder enterSiteSymmetry2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "site_symmetry_2", this);
        }

        public IntColumnBuilder enterValence() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "valence", this);
        }

        public StrColumnBuilder enterPdbxAtomSitePDBInsCode1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_atom_site_PDB_ins_code_1", this);
        }

        public StrColumnBuilder enterPdbxAtomSitePDBInsCode2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_atom_site_PDB_ins_code_2", this);
        }

        public IntColumnBuilder enterPdbxPDBModelNum() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_PDB_model_num", this);
        }

    }

    public static class GeomContactBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "geom_contact";

        public GeomContactBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterAtomSiteId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAltId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_alt_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAtomId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_atom_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteLabelCompId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_comp_id_1", this);
        }

        public IntColumnBuilder enterAtomSiteLabelSeqId1() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_seq_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAsymId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_asym_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAltId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_alt_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAtomId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_atom_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteLabelCompId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_comp_id_2", this);
        }

        public IntColumnBuilder enterAtomSiteLabelSeqId2() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_seq_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAsymId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_asym_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteAuthAtomId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_atom_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteAuthAsymId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_asym_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteAuthCompId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_comp_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteAuthSeqId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_seq_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteAuthAtomId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_atom_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteAuthAsymId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_asym_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteAuthCompId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_comp_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteAuthSeqId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_seq_id_2", this);
        }

        public FloatColumnBuilder enterDist() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "dist", this);
        }

        public FloatColumnBuilder enterDistEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "dist_esd", this);
        }

        public StrColumnBuilder enterPublFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "publ_flag", this);
        }

        public StrColumnBuilder enterSiteSymmetry1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "site_symmetry_1", this);
        }

        public StrColumnBuilder enterSiteSymmetry2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "site_symmetry_2", this);
        }

        public StrColumnBuilder enterPdbxAtomSitePDBInsCode1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_atom_site_PDB_ins_code_1", this);
        }

        public StrColumnBuilder enterPdbxAtomSitePDBInsCode2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_atom_site_PDB_ins_code_2", this);
        }

        public IntColumnBuilder enterPdbxPDBModelNum() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_PDB_model_num", this);
        }

    }

    public static class GeomHbondBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "geom_hbond";

        public GeomHbondBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public FloatColumnBuilder enterAngleDHA() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "angle_DHA", this);
        }

        public FloatColumnBuilder enterAngleDHAEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "angle_DHA_esd", this);
        }

        public StrColumnBuilder enterAtomSiteIdA() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_id_A", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAltIdA() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_alt_id_A", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAsymIdA() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_asym_id_A", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAtomIdA() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_atom_id_A", this);
        }

        public StrColumnBuilder enterAtomSiteLabelCompIdA() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_comp_id_A", this);
        }

        public IntColumnBuilder enterAtomSiteLabelSeqIdA() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_seq_id_A", this);
        }

        public StrColumnBuilder enterAtomSiteIdD() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_id_D", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAltIdD() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_alt_id_D", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAsymIdD() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_asym_id_D", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAtomIdD() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_atom_id_D", this);
        }

        public StrColumnBuilder enterAtomSiteLabelCompIdD() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_comp_id_D", this);
        }

        public IntColumnBuilder enterAtomSiteLabelSeqIdD() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_seq_id_D", this);
        }

        public StrColumnBuilder enterAtomSiteIdH() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_id_H", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAltIdH() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_alt_id_H", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAsymIdH() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_asym_id_H", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAtomIdH() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_atom_id_H", this);
        }

        public StrColumnBuilder enterAtomSiteLabelCompIdH() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_comp_id_H", this);
        }

        public IntColumnBuilder enterAtomSiteLabelSeqIdH() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_seq_id_H", this);
        }

        public StrColumnBuilder enterAtomSiteAuthAsymIdA() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_asym_id_A", this);
        }

        public StrColumnBuilder enterAtomSiteAuthAtomIdA() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_atom_id_A", this);
        }

        public StrColumnBuilder enterAtomSiteAuthCompIdA() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_comp_id_A", this);
        }

        public StrColumnBuilder enterAtomSiteAuthSeqIdA() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_seq_id_A", this);
        }

        public StrColumnBuilder enterAtomSiteAuthAsymIdD() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_asym_id_D", this);
        }

        public StrColumnBuilder enterAtomSiteAuthAtomIdD() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_atom_id_D", this);
        }

        public StrColumnBuilder enterAtomSiteAuthCompIdD() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_comp_id_D", this);
        }

        public StrColumnBuilder enterAtomSiteAuthSeqIdD() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_seq_id_D", this);
        }

        public StrColumnBuilder enterAtomSiteAuthAsymIdH() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_asym_id_H", this);
        }

        public StrColumnBuilder enterAtomSiteAuthAtomIdH() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_atom_id_H", this);
        }

        public StrColumnBuilder enterAtomSiteAuthCompIdH() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_comp_id_H", this);
        }

        public StrColumnBuilder enterAtomSiteAuthSeqIdH() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_seq_id_H", this);
        }

        public FloatColumnBuilder enterDistDA() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "dist_DA", this);
        }

        public FloatColumnBuilder enterDistDAEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "dist_DA_esd", this);
        }

        public FloatColumnBuilder enterDistDH() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "dist_DH", this);
        }

        public FloatColumnBuilder enterDistDHEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "dist_DH_esd", this);
        }

        public FloatColumnBuilder enterDistHA() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "dist_HA", this);
        }

        public FloatColumnBuilder enterDistHAEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "dist_HA_esd", this);
        }

        public StrColumnBuilder enterPublFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "publ_flag", this);
        }

        public StrColumnBuilder enterSiteSymmetryA() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "site_symmetry_A", this);
        }

        public StrColumnBuilder enterSiteSymmetryD() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "site_symmetry_D", this);
        }

        public StrColumnBuilder enterSiteSymmetryH() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "site_symmetry_H", this);
        }

    }

    public static class GeomTorsionBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "geom_torsion";

        public GeomTorsionBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterAtomSiteId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAltId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_alt_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAtomId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_atom_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteLabelCompId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_comp_id_1", this);
        }

        public IntColumnBuilder enterAtomSiteLabelSeqId1() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_seq_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAsymId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_asym_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAltId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_alt_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAtomId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_atom_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteLabelCompId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_comp_id_2", this);
        }

        public IntColumnBuilder enterAtomSiteLabelSeqId2() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_seq_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAsymId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_asym_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_id_3", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAltId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_alt_id_3", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAtomId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_atom_id_3", this);
        }

        public StrColumnBuilder enterAtomSiteLabelCompId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_comp_id_3", this);
        }

        public IntColumnBuilder enterAtomSiteLabelSeqId3() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_seq_id_3", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAsymId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_asym_id_3", this);
        }

        public StrColumnBuilder enterAtomSiteId4() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_id_4", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAltId4() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_alt_id_4", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAtomId4() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_atom_id_4", this);
        }

        public StrColumnBuilder enterAtomSiteLabelCompId4() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_comp_id_4", this);
        }

        public IntColumnBuilder enterAtomSiteLabelSeqId4() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_seq_id_4", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAsymId4() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_asym_id_4", this);
        }

        public StrColumnBuilder enterAtomSiteAuthAtomId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_atom_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteAuthAsymId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_asym_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteAuthCompId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_comp_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteAuthSeqId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_seq_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteAuthAtomId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_atom_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteAuthAsymId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_asym_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteAuthCompId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_comp_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteAuthSeqId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_seq_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteAuthAtomId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_atom_id_3", this);
        }

        public StrColumnBuilder enterAtomSiteAuthAsymId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_asym_id_3", this);
        }

        public StrColumnBuilder enterAtomSiteAuthCompId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_comp_id_3", this);
        }

        public StrColumnBuilder enterAtomSiteAuthSeqId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_seq_id_3", this);
        }

        public StrColumnBuilder enterAtomSiteAuthAtomId4() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_atom_id_4", this);
        }

        public StrColumnBuilder enterAtomSiteAuthAsymId4() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_asym_id_4", this);
        }

        public StrColumnBuilder enterAtomSiteAuthCompId4() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_comp_id_4", this);
        }

        public StrColumnBuilder enterAtomSiteAuthSeqId4() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_seq_id_4", this);
        }

        public StrColumnBuilder enterPublFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "publ_flag", this);
        }

        public StrColumnBuilder enterSiteSymmetry1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "site_symmetry_1", this);
        }

        public StrColumnBuilder enterSiteSymmetry2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "site_symmetry_2", this);
        }

        public StrColumnBuilder enterSiteSymmetry3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "site_symmetry_3", this);
        }

        public StrColumnBuilder enterSiteSymmetry4() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "site_symmetry_4", this);
        }

        public FloatColumnBuilder enterValue() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "value", this);
        }

        public FloatColumnBuilder enterValueEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "value_esd", this);
        }

        public StrColumnBuilder enterPdbxAtomSitePDBInsCode1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_atom_site_PDB_ins_code_1", this);
        }

        public StrColumnBuilder enterPdbxAtomSitePDBInsCode2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_atom_site_PDB_ins_code_2", this);
        }

        public StrColumnBuilder enterPdbxAtomSitePDBInsCode3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_atom_site_PDB_ins_code_3", this);
        }

        public StrColumnBuilder enterPdbxAtomSitePDBInsCode4() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_atom_site_PDB_ins_code_4", this);
        }

        public IntColumnBuilder enterPdbxPDBModelNum() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_PDB_model_num", this);
        }

    }

    public static class JournalBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "journal";

        public JournalBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterCodenASTM() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "coden_ASTM", this);
        }

        public StrColumnBuilder enterCodenCambridge() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "coden_Cambridge", this);
        }

        public StrColumnBuilder enterCoeditorAddress() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "coeditor_address", this);
        }

        public StrColumnBuilder enterCoeditorCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "coeditor_code", this);
        }

        public StrColumnBuilder enterCoeditorEmail() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "coeditor_email", this);
        }

        public StrColumnBuilder enterCoeditorFax() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "coeditor_fax", this);
        }

        public StrColumnBuilder enterCoeditorName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "coeditor_name", this);
        }

        public StrColumnBuilder enterCoeditorNotes() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "coeditor_notes", this);
        }

        public StrColumnBuilder enterCoeditorPhone() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "coeditor_phone", this);
        }

        public StrColumnBuilder enterDataValidationNumber() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "data_validation_number", this);
        }

        public StrColumnBuilder enterDateAccepted() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date_accepted", this);
        }

        public StrColumnBuilder enterDateFromCoeditor() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date_from_coeditor", this);
        }

        public StrColumnBuilder enterDateToCoeditor() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date_to_coeditor", this);
        }

        public StrColumnBuilder enterDatePrintersFinal() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date_printers_final", this);
        }

        public StrColumnBuilder enterDatePrintersFirst() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date_printers_first", this);
        }

        public StrColumnBuilder enterDateProofsIn() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date_proofs_in", this);
        }

        public StrColumnBuilder enterDateProofsOut() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date_proofs_out", this);
        }

        public StrColumnBuilder enterDateRecdCopyright() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date_recd_copyright", this);
        }

        public StrColumnBuilder enterDateRecdElectronic() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date_recd_electronic", this);
        }

        public StrColumnBuilder enterDateRecdHardCopy() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date_recd_hard_copy", this);
        }

        public StrColumnBuilder enterIssue() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "issue", this);
        }

        public StrColumnBuilder enterLanguage() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "language", this);
        }

        public StrColumnBuilder enterNameFull() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name_full", this);
        }

        public StrColumnBuilder enterPageFirst() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "page_first", this);
        }

        public StrColumnBuilder enterPageLast() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "page_last", this);
        }

        public StrColumnBuilder enterPaperCategory() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "paper_category", this);
        }

        public StrColumnBuilder enterSupplPublNumber() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "suppl_publ_number", this);
        }

        public StrColumnBuilder enterSupplPublPages() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "suppl_publ_pages", this);
        }

        public StrColumnBuilder enterTecheditorAddress() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "techeditor_address", this);
        }

        public StrColumnBuilder enterTecheditorCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "techeditor_code", this);
        }

        public StrColumnBuilder enterTecheditorEmail() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "techeditor_email", this);
        }

        public StrColumnBuilder enterTecheditorFax() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "techeditor_fax", this);
        }

        public StrColumnBuilder enterTecheditorName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "techeditor_name", this);
        }

        public StrColumnBuilder enterTecheditorNotes() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "techeditor_notes", this);
        }

        public StrColumnBuilder enterTecheditorPhone() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "techeditor_phone", this);
        }

        public StrColumnBuilder enterVolume() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "volume", this);
        }

        public StrColumnBuilder enterYear() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "year", this);
        }

    }

    public static class JournalIndexBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "journal_index";

        public JournalIndexBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterSubterm() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "subterm", this);
        }

        public StrColumnBuilder enterTerm() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "term", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

    }

    public static class PhasingBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "phasing";

        public PhasingBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "method", this);
        }

    }

    public static class PhasingAveragingBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "phasing_averaging";

        public PhasingAveragingBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "method", this);
        }

    }

    public static class PhasingIsomorphousBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "phasing_isomorphous";

        public PhasingIsomorphousBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "method", this);
        }

        public StrColumnBuilder enterParent() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "parent", this);
        }

    }

    public static class PhasingMADBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "phasing_MAD";

        public PhasingMADBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "method", this);
        }

        public FloatColumnBuilder enterPdbxDResLow() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_d_res_low", this);
        }

        public FloatColumnBuilder enterPdbxDResHigh() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_d_res_high", this);
        }

        public IntColumnBuilder enterPdbxReflnsAcentric() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_reflns_acentric", this);
        }

        public IntColumnBuilder enterPdbxReflnsCentric() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_reflns_centric", this);
        }

        public IntColumnBuilder enterPdbxReflns() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_reflns", this);
        }

        public FloatColumnBuilder enterPdbxFomAcentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_fom_acentric", this);
        }

        public FloatColumnBuilder enterPdbxFomCentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_fom_centric", this);
        }

        public FloatColumnBuilder enterPdbxFom() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_fom", this);
        }

        public FloatColumnBuilder enterPdbxRCullisCentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_R_cullis_centric", this);
        }

        public FloatColumnBuilder enterPdbxRCullisAcentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_R_cullis_acentric", this);
        }

        public FloatColumnBuilder enterPdbxRCullis() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_R_cullis", this);
        }

        public FloatColumnBuilder enterPdbxRKrautCentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_R_kraut_centric", this);
        }

        public FloatColumnBuilder enterPdbxRKrautAcentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_R_kraut_acentric", this);
        }

        public FloatColumnBuilder enterPdbxRKraut() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_R_kraut", this);
        }

        public FloatColumnBuilder enterPdbxLocCentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_loc_centric", this);
        }

        public FloatColumnBuilder enterPdbxLocAcentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_loc_acentric", this);
        }

        public FloatColumnBuilder enterPdbxLoc() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_loc", this);
        }

        public FloatColumnBuilder enterPdbxPowerCentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_power_centric", this);
        }

        public FloatColumnBuilder enterPdbxPowerAcentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_power_acentric", this);
        }

        public FloatColumnBuilder enterPdbxPower() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_power", this);
        }

        public IntColumnBuilder enterPdbxNumberDataSets() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_number_data_sets", this);
        }

        public StrColumnBuilder enterPdbxAnomScatMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_anom_scat_method", this);
        }

    }

    public static class PhasingMADClustBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "phasing_MAD_clust";

        public PhasingMADClustBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterExptId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "expt_id", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterNumberSet() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number_set", this);
        }

    }

    public static class PhasingMADExptBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "phasing_MAD_expt";

        public PhasingMADExptBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public FloatColumnBuilder enterDeltaDeltaPhi() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "delta_delta_phi", this);
        }

        public FloatColumnBuilder enterDeltaPhi() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "delta_phi", this);
        }

        public FloatColumnBuilder enterDeltaPhiSigma() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "delta_phi_sigma", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public FloatColumnBuilder enterMeanFom() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "mean_fom", this);
        }

        public IntColumnBuilder enterNumberClust() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number_clust", this);
        }

        public FloatColumnBuilder enterRNormalAll() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "R_normal_all", this);
        }

        public FloatColumnBuilder enterRNormalAnomScat() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "R_normal_anom_scat", this);
        }

    }

    public static class PhasingMADRatioBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "phasing_MAD_ratio";

        public PhasingMADRatioBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public FloatColumnBuilder enterDResHigh() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "d_res_high", this);
        }

        public FloatColumnBuilder enterDResLow() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "d_res_low", this);
        }

        public StrColumnBuilder enterExptId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "expt_id", this);
        }

        public StrColumnBuilder enterClustId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "clust_id", this);
        }

        public FloatColumnBuilder enterRatioOneWl() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ratio_one_wl", this);
        }

        public FloatColumnBuilder enterRatioOneWlCentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ratio_one_wl_centric", this);
        }

        public FloatColumnBuilder enterRatioTwoWl() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ratio_two_wl", this);
        }

        public FloatColumnBuilder enterWavelength1() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "wavelength_1", this);
        }

        public FloatColumnBuilder enterWavelength2() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "wavelength_2", this);
        }

    }

    public static class PhasingMADSetBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "phasing_MAD_set";

        public PhasingMADSetBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterClustId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "clust_id", this);
        }

        public FloatColumnBuilder enterDResHigh() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "d_res_high", this);
        }

        public FloatColumnBuilder enterDResLow() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "d_res_low", this);
        }

        public StrColumnBuilder enterExptId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "expt_id", this);
        }

        public FloatColumnBuilder enterFDoublePrime() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "f_double_prime", this);
        }

        public FloatColumnBuilder enterFPrime() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "f_prime", this);
        }

        public StrColumnBuilder enterSetId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "set_id", this);
        }

        public FloatColumnBuilder enterWavelength() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "wavelength", this);
        }

        public StrColumnBuilder enterWavelengthDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "wavelength_details", this);
        }

        public StrColumnBuilder enterPdbxAtomType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_atom_type", this);
        }

        public FloatColumnBuilder enterPdbxFPrimeRefined() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_f_prime_refined", this);
        }

        public FloatColumnBuilder enterPdbxFDoublePrimeRefined() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_f_double_prime_refined", this);
        }

    }

    public static class PhasingMIRBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "phasing_MIR";

        public PhasingMIRBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public FloatColumnBuilder enterDResHigh() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "d_res_high", this);
        }

        public FloatColumnBuilder enterDResLow() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "d_res_low", this);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public FloatColumnBuilder enterFOM() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "FOM", this);
        }

        public FloatColumnBuilder enterFOMAcentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "FOM_acentric", this);
        }

        public FloatColumnBuilder enterFOMCentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "FOM_centric", this);
        }

        public StrColumnBuilder enterMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "method", this);
        }

        public IntColumnBuilder enterReflns() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "reflns", this);
        }

        public IntColumnBuilder enterReflnsAcentric() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "reflns_acentric", this);
        }

        public IntColumnBuilder enterReflnsCentric() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "reflns_centric", this);
        }

        public StrColumnBuilder enterReflnsCriterion() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "reflns_criterion", this);
        }

        public IntColumnBuilder enterPdbxNumberDerivatives() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_number_derivatives", this);
        }

    }

    public static class PhasingMIRDerBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "phasing_MIR_der";

        public PhasingMIRDerBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public FloatColumnBuilder enterDResHigh() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "d_res_high", this);
        }

        public FloatColumnBuilder enterDResLow() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "d_res_low", this);
        }

        public StrColumnBuilder enterDerSetId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "der_set_id", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterNativeSetId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "native_set_id", this);
        }

        public IntColumnBuilder enterNumberOfSites() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number_of_sites", this);
        }

        public FloatColumnBuilder enterPowerAcentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "power_acentric", this);
        }

        public FloatColumnBuilder enterPowerCentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "power_centric", this);
        }

        public FloatColumnBuilder enterRCullisAcentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "R_cullis_acentric", this);
        }

        public FloatColumnBuilder enterRCullisAnomalous() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "R_cullis_anomalous", this);
        }

        public FloatColumnBuilder enterRCullisCentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "R_cullis_centric", this);
        }

        public IntColumnBuilder enterReflnsAcentric() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "reflns_acentric", this);
        }

        public IntColumnBuilder enterReflnsAnomalous() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "reflns_anomalous", this);
        }

        public IntColumnBuilder enterReflnsCentric() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "reflns_centric", this);
        }

        public StrColumnBuilder enterReflnsCriteria() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "reflns_criteria", this);
        }

        public FloatColumnBuilder enterPdbxRKrautCentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_R_kraut_centric", this);
        }

        public FloatColumnBuilder enterPdbxRKrautAcentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_R_kraut_acentric", this);
        }

        public FloatColumnBuilder enterPdbxRKraut() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_R_kraut", this);
        }

        public FloatColumnBuilder enterPdbxLocCentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_loc_centric", this);
        }

        public FloatColumnBuilder enterPdbxLocAcentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_loc_acentric", this);
        }

        public FloatColumnBuilder enterPdbxLoc() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_loc", this);
        }

        public FloatColumnBuilder enterPdbxFomCentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_fom_centric", this);
        }

        public FloatColumnBuilder enterPdbxFomAcentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_fom_acentric", this);
        }

        public FloatColumnBuilder enterPdbxFom() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_fom", this);
        }

        public FloatColumnBuilder enterPdbxPower() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_power", this);
        }

        public FloatColumnBuilder enterPdbxRCullis() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_R_cullis", this);
        }

        public IntColumnBuilder enterPdbxReflns() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_reflns", this);
        }

    }

    public static class PhasingMIRDerReflnBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "phasing_MIR_der_refln";

        public PhasingMIRDerReflnBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDerId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "der_id", this);
        }

        public FloatColumnBuilder enterFCalc() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "F_calc", this);
        }

        public FloatColumnBuilder enterFCalcAu() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "F_calc_au", this);
        }

        public FloatColumnBuilder enterFMeas() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "F_meas", this);
        }

        public FloatColumnBuilder enterFMeasAu() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "F_meas_au", this);
        }

        public FloatColumnBuilder enterFMeasSigma() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "F_meas_sigma", this);
        }

        public FloatColumnBuilder enterFMeasSigmaAu() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "F_meas_sigma_au", this);
        }

        public FloatColumnBuilder enterHLAIso() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "HL_A_iso", this);
        }

        public FloatColumnBuilder enterHLBIso() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "HL_B_iso", this);
        }

        public FloatColumnBuilder enterHLCIso() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "HL_C_iso", this);
        }

        public FloatColumnBuilder enterHLDIso() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "HL_D_iso", this);
        }

        public IntColumnBuilder enterIndexH() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "index_h", this);
        }

        public IntColumnBuilder enterIndexK() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "index_k", this);
        }

        public IntColumnBuilder enterIndexL() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "index_l", this);
        }

        public FloatColumnBuilder enterPhaseCalc() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "phase_calc", this);
        }

        public StrColumnBuilder enterSetId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "set_id", this);
        }

    }

    public static class PhasingMIRDerShellBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "phasing_MIR_der_shell";

        public PhasingMIRDerShellBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public FloatColumnBuilder enterDResHigh() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "d_res_high", this);
        }

        public FloatColumnBuilder enterDResLow() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "d_res_low", this);
        }

        public StrColumnBuilder enterDerId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "der_id", this);
        }

        public FloatColumnBuilder enterFom() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "fom", this);
        }

        public FloatColumnBuilder enterHaAmpl() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ha_ampl", this);
        }

        public FloatColumnBuilder enterLoc() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "loc", this);
        }

        public FloatColumnBuilder enterPhase() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "phase", this);
        }

        public FloatColumnBuilder enterPower() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "power", this);
        }

        public FloatColumnBuilder enterRCullis() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "R_cullis", this);
        }

        public FloatColumnBuilder enterRKraut() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "R_kraut", this);
        }

        public IntColumnBuilder enterReflns() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "reflns", this);
        }

        public FloatColumnBuilder enterPdbxRCullisCentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_R_cullis_centric", this);
        }

        public FloatColumnBuilder enterPdbxRCullisAcentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_R_cullis_acentric", this);
        }

        public FloatColumnBuilder enterPdbxRKrautCentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_R_kraut_centric", this);
        }

        public FloatColumnBuilder enterPdbxRKrautAcentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_R_kraut_acentric", this);
        }

        public FloatColumnBuilder enterPdbxLocCentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_loc_centric", this);
        }

        public FloatColumnBuilder enterPdbxLocAcentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_loc_acentric", this);
        }

        public FloatColumnBuilder enterPdbxPowerCentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_power_centric", this);
        }

        public FloatColumnBuilder enterPdbxPowerAcentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_power_acentric", this);
        }

        public FloatColumnBuilder enterPdbxFomCentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_fom_centric", this);
        }

        public FloatColumnBuilder enterPdbxFomAcentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_fom_acentric", this);
        }

        public FloatColumnBuilder enterPdbxReflnsCentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_reflns_centric", this);
        }

        public IntColumnBuilder enterPdbxReflnsAcentric() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_reflns_acentric", this);
        }

    }

    public static class PhasingMIRDerSiteBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "phasing_MIR_der_site";

        public PhasingMIRDerSiteBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterAtomTypeSymbol() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_type_symbol", this);
        }

        public FloatColumnBuilder enterBIso() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "B_iso", this);
        }

        public FloatColumnBuilder enterBIsoEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "B_iso_esd", this);
        }

        public FloatColumnBuilder enterCartnX() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Cartn_x", this);
        }

        public FloatColumnBuilder enterCartnXEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Cartn_x_esd", this);
        }

        public FloatColumnBuilder enterCartnY() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Cartn_y", this);
        }

        public FloatColumnBuilder enterCartnYEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Cartn_y_esd", this);
        }

        public FloatColumnBuilder enterCartnZ() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Cartn_z", this);
        }

        public FloatColumnBuilder enterCartnZEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Cartn_z_esd", this);
        }

        public StrColumnBuilder enterDerId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "der_id", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public FloatColumnBuilder enterFractX() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "fract_x", this);
        }

        public FloatColumnBuilder enterFractXEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "fract_x_esd", this);
        }

        public FloatColumnBuilder enterFractY() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "fract_y", this);
        }

        public FloatColumnBuilder enterFractYEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "fract_y_esd", this);
        }

        public FloatColumnBuilder enterFractZ() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "fract_z", this);
        }

        public FloatColumnBuilder enterFractZEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "fract_z_esd", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public FloatColumnBuilder enterOccupancy() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "occupancy", this);
        }

        public FloatColumnBuilder enterOccupancyAnom() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "occupancy_anom", this);
        }

        public FloatColumnBuilder enterOccupancyAnomSu() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "occupancy_anom_su", this);
        }

        public FloatColumnBuilder enterOccupancyIso() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "occupancy_iso", this);
        }

        public FloatColumnBuilder enterOccupancyIsoSu() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "occupancy_iso_su", this);
        }

    }

    public static class PhasingMIRShellBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "phasing_MIR_shell";

        public PhasingMIRShellBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public FloatColumnBuilder enterDResHigh() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "d_res_high", this);
        }

        public FloatColumnBuilder enterDResLow() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "d_res_low", this);
        }

        public FloatColumnBuilder enterFOM() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "FOM", this);
        }

        public FloatColumnBuilder enterFOMAcentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "FOM_acentric", this);
        }

        public FloatColumnBuilder enterFOMCentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "FOM_centric", this);
        }

        public FloatColumnBuilder enterLoc() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "loc", this);
        }

        public FloatColumnBuilder enterMeanPhase() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "mean_phase", this);
        }

        public FloatColumnBuilder enterPower() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "power", this);
        }

        public FloatColumnBuilder enterRCullis() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "R_cullis", this);
        }

        public FloatColumnBuilder enterRKraut() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "R_kraut", this);
        }

        public IntColumnBuilder enterReflns() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "reflns", this);
        }

        public IntColumnBuilder enterReflnsAcentric() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "reflns_acentric", this);
        }

        public IntColumnBuilder enterReflnsAnomalous() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "reflns_anomalous", this);
        }

        public IntColumnBuilder enterReflnsCentric() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "reflns_centric", this);
        }

        public FloatColumnBuilder enterPdbxLocCentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_loc_centric", this);
        }

        public FloatColumnBuilder enterPdbxLocAcentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_loc_acentric", this);
        }

        public FloatColumnBuilder enterPdbxPowerCentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_power_centric", this);
        }

        public FloatColumnBuilder enterPdbxPowerAcentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_power_acentric", this);
        }

        public FloatColumnBuilder enterPdbxRKrautCentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_R_kraut_centric", this);
        }

        public FloatColumnBuilder enterPdbxRKrautAcentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_R_kraut_acentric", this);
        }

        public FloatColumnBuilder enterPdbxRCullisCentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_R_cullis_centric", this);
        }

        public FloatColumnBuilder enterPdbxRCullisAcentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_R_cullis_acentric", this);
        }

    }

    public static class PhasingSetBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "phasing_set";

        public PhasingSetBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public FloatColumnBuilder enterCellAngleAlpha() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "cell_angle_alpha", this);
        }

        public FloatColumnBuilder enterCellAngleBeta() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "cell_angle_beta", this);
        }

        public FloatColumnBuilder enterCellAngleGamma() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "cell_angle_gamma", this);
        }

        public FloatColumnBuilder enterCellLengthA() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "cell_length_a", this);
        }

        public FloatColumnBuilder enterCellLengthB() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "cell_length_b", this);
        }

        public FloatColumnBuilder enterCellLengthC() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "cell_length_c", this);
        }

        public StrColumnBuilder enterDetectorSpecific() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "detector_specific", this);
        }

        public StrColumnBuilder enterDetectorType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "detector_type", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterRadiationSourceSpecific() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "radiation_source_specific", this);
        }

        public FloatColumnBuilder enterRadiationWavelength() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "radiation_wavelength", this);
        }

        public FloatColumnBuilder enterTemp() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "temp", this);
        }

        public StrColumnBuilder enterPdbxTempDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_temp_details", this);
        }

        public FloatColumnBuilder enterPdbxDResHigh() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_d_res_high", this);
        }

        public FloatColumnBuilder enterPdbxDResLow() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_d_res_low", this);
        }

    }

    public static class PhasingSetReflnBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "phasing_set_refln";

        public PhasingSetReflnBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterSetId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "set_id", this);
        }

        public FloatColumnBuilder enterFMeas() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "F_meas", this);
        }

        public FloatColumnBuilder enterFMeasAu() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "F_meas_au", this);
        }

        public FloatColumnBuilder enterFMeasSigma() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "F_meas_sigma", this);
        }

        public FloatColumnBuilder enterFMeasSigmaAu() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "F_meas_sigma_au", this);
        }

        public IntColumnBuilder enterIndexH() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "index_h", this);
        }

        public IntColumnBuilder enterIndexK() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "index_k", this);
        }

        public IntColumnBuilder enterIndexL() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "index_l", this);
        }

    }

    public static class PublBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "publ";

        public PublBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterContactAuthor() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "contact_author", this);
        }

        public StrColumnBuilder enterContactAuthorAddress() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "contact_author_address", this);
        }

        public StrColumnBuilder enterContactAuthorEmail() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "contact_author_email", this);
        }

        public StrColumnBuilder enterContactAuthorFax() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "contact_author_fax", this);
        }

        public StrColumnBuilder enterContactAuthorName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "contact_author_name", this);
        }

        public StrColumnBuilder enterContactAuthorPhone() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "contact_author_phone", this);
        }

        public StrColumnBuilder enterContactLetter() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "contact_letter", this);
        }

        public StrColumnBuilder enterManuscriptCreation() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "manuscript_creation", this);
        }

        public StrColumnBuilder enterManuscriptProcessed() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "manuscript_processed", this);
        }

        public StrColumnBuilder enterManuscriptText() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "manuscript_text", this);
        }

        public StrColumnBuilder enterRequestedCategory() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "requested_category", this);
        }

        public StrColumnBuilder enterRequestedCoeditorName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "requested_coeditor_name", this);
        }

        public StrColumnBuilder enterRequestedJournal() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "requested_journal", this);
        }

        public StrColumnBuilder enterSectionAbstract() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "section_abstract", this);
        }

        public StrColumnBuilder enterSectionAcknowledgements() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "section_acknowledgements", this);
        }

        public StrColumnBuilder enterSectionComment() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "section_comment", this);
        }

        public StrColumnBuilder enterSectionDiscussion() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "section_discussion", this);
        }

        public StrColumnBuilder enterSectionExperimental() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "section_experimental", this);
        }

        public StrColumnBuilder enterSectionExptlPrep() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "section_exptl_prep", this);
        }

        public StrColumnBuilder enterSectionExptlRefinement() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "section_exptl_refinement", this);
        }

        public StrColumnBuilder enterSectionExptlSolution() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "section_exptl_solution", this);
        }

        public StrColumnBuilder enterSectionFigureCaptions() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "section_figure_captions", this);
        }

        public StrColumnBuilder enterSectionIntroduction() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "section_introduction", this);
        }

        public StrColumnBuilder enterSectionReferences() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "section_references", this);
        }

        public StrColumnBuilder enterSectionSynopsis() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "section_synopsis", this);
        }

        public StrColumnBuilder enterSectionTableLegends() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "section_table_legends", this);
        }

        public StrColumnBuilder enterSectionTitle() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "section_title", this);
        }

        public StrColumnBuilder enterSectionTitleFootnote() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "section_title_footnote", this);
        }

    }

    public static class PublAuthorBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "publ_author";

        public PublAuthorBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterAddress() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "address", this);
        }

        public StrColumnBuilder enterEmail() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "email", this);
        }

        public StrColumnBuilder enterFootnote() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "footnote", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public StrColumnBuilder enterIdIucr() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id_iucr", this);
        }

    }

    public static class PublBodyBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "publ_body";

        public PublBodyBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterContents() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "contents", this);
        }

        public StrColumnBuilder enterElement() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "element", this);
        }

        public StrColumnBuilder enterFormat() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "format", this);
        }

        public StrColumnBuilder enterLabel() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label", this);
        }

        public StrColumnBuilder enterTitle() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "title", this);
        }

    }

    public static class PublManuscriptInclBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "publ_manuscript_incl";

        public PublManuscriptInclBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterExtraDefn() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "extra_defn", this);
        }

        public StrColumnBuilder enterExtraInfo() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "extra_info", this);
        }

        public StrColumnBuilder enterExtraItem() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "extra_item", this);
        }

    }

    public static class RefineBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "refine";

        public RefineBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public FloatColumnBuilder enterAnisoB11() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "aniso_B[1][1]", this);
        }

        public FloatColumnBuilder enterAnisoB12() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "aniso_B[1][2]", this);
        }

        public FloatColumnBuilder enterAnisoB13() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "aniso_B[1][3]", this);
        }

        public FloatColumnBuilder enterAnisoB22() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "aniso_B[2][2]", this);
        }

        public FloatColumnBuilder enterAnisoB23() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "aniso_B[2][3]", this);
        }

        public FloatColumnBuilder enterAnisoB33() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "aniso_B[3][3]", this);
        }

        public FloatColumnBuilder enterBIsoMax() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "B_iso_max", this);
        }

        public FloatColumnBuilder enterBIsoMean() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "B_iso_mean", this);
        }

        public FloatColumnBuilder enterBIsoMin() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "B_iso_min", this);
        }

        public FloatColumnBuilder enterCorrelationCoeffFoToFc() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "correlation_coeff_Fo_to_Fc", this);
        }

        public FloatColumnBuilder enterCorrelationCoeffFoToFcFree() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "correlation_coeff_Fo_to_Fc_free", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public FloatColumnBuilder enterDiffDensityMax() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "diff_density_max", this);
        }

        public FloatColumnBuilder enterDiffDensityMaxEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "diff_density_max_esd", this);
        }

        public FloatColumnBuilder enterDiffDensityMin() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "diff_density_min", this);
        }

        public FloatColumnBuilder enterDiffDensityMinEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "diff_density_min_esd", this);
        }

        public FloatColumnBuilder enterDiffDensityRms() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "diff_density_rms", this);
        }

        public FloatColumnBuilder enterDiffDensityRmsEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "diff_density_rms_esd", this);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterPdbxRefineId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_refine_id", this);
        }

        public StrColumnBuilder enterLsAbsStructureDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ls_abs_structure_details", this);
        }

        public FloatColumnBuilder enterLsAbsStructureFlack() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ls_abs_structure_Flack", this);
        }

        public FloatColumnBuilder enterLsAbsStructureFlackEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ls_abs_structure_Flack_esd", this);
        }

        public FloatColumnBuilder enterLsAbsStructureRogers() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ls_abs_structure_Rogers", this);
        }

        public FloatColumnBuilder enterLsAbsStructureRogersEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ls_abs_structure_Rogers_esd", this);
        }

        public FloatColumnBuilder enterLsDResHigh() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ls_d_res_high", this);
        }

        public FloatColumnBuilder enterLsDResLow() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ls_d_res_low", this);
        }

        public FloatColumnBuilder enterLsExtinctionCoef() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ls_extinction_coef", this);
        }

        public FloatColumnBuilder enterLsExtinctionCoefEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ls_extinction_coef_esd", this);
        }

        public StrColumnBuilder enterLsExtinctionExpression() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ls_extinction_expression", this);
        }

        public StrColumnBuilder enterLsExtinctionMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ls_extinction_method", this);
        }

        public FloatColumnBuilder enterLsGoodnessOfFitAll() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ls_goodness_of_fit_all", this);
        }

        public FloatColumnBuilder enterLsGoodnessOfFitAllEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ls_goodness_of_fit_all_esd", this);
        }

        public FloatColumnBuilder enterLsGoodnessOfFitObs() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ls_goodness_of_fit_obs", this);
        }

        public FloatColumnBuilder enterLsGoodnessOfFitObsEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ls_goodness_of_fit_obs_esd", this);
        }

        public StrColumnBuilder enterLsHydrogenTreatment() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ls_hydrogen_treatment", this);
        }

        public StrColumnBuilder enterLsMatrixType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ls_matrix_type", this);
        }

        public IntColumnBuilder enterLsNumberConstraints() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ls_number_constraints", this);
        }

        public IntColumnBuilder enterLsNumberParameters() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ls_number_parameters", this);
        }

        public IntColumnBuilder enterLsNumberReflnsAll() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ls_number_reflns_all", this);
        }

        public IntColumnBuilder enterLsNumberReflnsObs() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ls_number_reflns_obs", this);
        }

        public IntColumnBuilder enterLsNumberReflnsRFree() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ls_number_reflns_R_free", this);
        }

        public IntColumnBuilder enterLsNumberReflnsRWork() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ls_number_reflns_R_work", this);
        }

        public IntColumnBuilder enterLsNumberRestraints() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ls_number_restraints", this);
        }

        public FloatColumnBuilder enterLsPercentReflnsObs() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ls_percent_reflns_obs", this);
        }

        public FloatColumnBuilder enterLsPercentReflnsRFree() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ls_percent_reflns_R_free", this);
        }

        public FloatColumnBuilder enterLsRFactorAll() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ls_R_factor_all", this);
        }

        public FloatColumnBuilder enterLsRFactorObs() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ls_R_factor_obs", this);
        }

        public FloatColumnBuilder enterLsRFactorRFree() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ls_R_factor_R_free", this);
        }

        public FloatColumnBuilder enterLsRFactorRFreeError() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ls_R_factor_R_free_error", this);
        }

        public StrColumnBuilder enterLsRFactorRFreeErrorDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ls_R_factor_R_free_error_details", this);
        }

        public FloatColumnBuilder enterLsRFactorRWork() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ls_R_factor_R_work", this);
        }

        public FloatColumnBuilder enterLsRFsqdFactorObs() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ls_R_Fsqd_factor_obs", this);
        }

        public FloatColumnBuilder enterLsRIFactorObs() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ls_R_I_factor_obs", this);
        }

        public FloatColumnBuilder enterLsRedundancyReflnsAll() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ls_redundancy_reflns_all", this);
        }

        public FloatColumnBuilder enterLsRedundancyReflnsObs() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ls_redundancy_reflns_obs", this);
        }

        public FloatColumnBuilder enterLsRestrainedSAll() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ls_restrained_S_all", this);
        }

        public FloatColumnBuilder enterLsRestrainedSObs() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ls_restrained_S_obs", this);
        }

        public FloatColumnBuilder enterLsShiftOverEsdMax() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ls_shift_over_esd_max", this);
        }

        public FloatColumnBuilder enterLsShiftOverEsdMean() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ls_shift_over_esd_mean", this);
        }

        public StrColumnBuilder enterLsStructureFactorCoef() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ls_structure_factor_coef", this);
        }

        public StrColumnBuilder enterLsWeightingDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ls_weighting_details", this);
        }

        public StrColumnBuilder enterLsWeightingScheme() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ls_weighting_scheme", this);
        }

        public FloatColumnBuilder enterLsWRFactorAll() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ls_wR_factor_all", this);
        }

        public FloatColumnBuilder enterLsWRFactorObs() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ls_wR_factor_obs", this);
        }

        public FloatColumnBuilder enterLsWRFactorRFree() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ls_wR_factor_R_free", this);
        }

        public FloatColumnBuilder enterLsWRFactorRWork() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ls_wR_factor_R_work", this);
        }

        public FloatColumnBuilder enterOccupancyMax() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "occupancy_max", this);
        }

        public FloatColumnBuilder enterOccupancyMin() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "occupancy_min", this);
        }

        public StrColumnBuilder enterSolventModelDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "solvent_model_details", this);
        }

        public FloatColumnBuilder enterSolventModelParamBsol() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "solvent_model_param_bsol", this);
        }

        public FloatColumnBuilder enterSolventModelParamKsol() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "solvent_model_param_ksol", this);
        }

        public FloatColumnBuilder enterPdbxRComplete() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_R_complete", this);
        }

        public FloatColumnBuilder enterLsRFactorGt() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ls_R_factor_gt", this);
        }

        public FloatColumnBuilder enterLsGoodnessOfFitGt() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ls_goodness_of_fit_gt", this);
        }

        public FloatColumnBuilder enterLsGoodnessOfFitRef() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ls_goodness_of_fit_ref", this);
        }

        public FloatColumnBuilder enterLsShiftOverSuMax() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ls_shift_over_su_max", this);
        }

        public FloatColumnBuilder enterLsShiftOverSuMaxLt() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ls_shift_over_su_max_lt", this);
        }

        public FloatColumnBuilder enterLsShiftOverSuMean() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ls_shift_over_su_mean", this);
        }

        public FloatColumnBuilder enterLsShiftOverSuMeanLt() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ls_shift_over_su_mean_lt", this);
        }

        public FloatColumnBuilder enterPdbxLsSigmaI() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_ls_sigma_I", this);
        }

        public FloatColumnBuilder enterPdbxLsSigmaF() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_ls_sigma_F", this);
        }

        public FloatColumnBuilder enterPdbxLsSigmaFsqd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_ls_sigma_Fsqd", this);
        }

        public FloatColumnBuilder enterPdbxDataCutoffHighAbsF() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_data_cutoff_high_absF", this);
        }

        public FloatColumnBuilder enterPdbxDataCutoffHighRmsAbsF() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_data_cutoff_high_rms_absF", this);
        }

        public FloatColumnBuilder enterPdbxDataCutoffLowAbsF() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_data_cutoff_low_absF", this);
        }

        public StrColumnBuilder enterPdbxIsotropicThermalModel() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_isotropic_thermal_model", this);
        }

        public StrColumnBuilder enterPdbxLsCrossValidMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_ls_cross_valid_method", this);
        }

        public StrColumnBuilder enterPdbxMethodToDetermineStruct() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_method_to_determine_struct", this);
        }

        public StrColumnBuilder enterPdbxStartingModel() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_starting_model", this);
        }

        public StrColumnBuilder enterPdbxStereochemistryTargetValues() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_stereochemistry_target_values", this);
        }

        public StrColumnBuilder enterPdbxRFreeSelectionDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_R_Free_selection_details", this);
        }

        public StrColumnBuilder enterPdbxStereochemTargetValSpecCase() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_stereochem_target_val_spec_case", this);
        }

        public FloatColumnBuilder enterPdbxOverallESUR() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_overall_ESU_R", this);
        }

        public FloatColumnBuilder enterPdbxOverallESURFree() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_overall_ESU_R_Free", this);
        }

        public FloatColumnBuilder enterPdbxSolventVdwProbeRadii() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_solvent_vdw_probe_radii", this);
        }

        public FloatColumnBuilder enterPdbxSolventIonProbeRadii() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_solvent_ion_probe_radii", this);
        }

        public FloatColumnBuilder enterPdbxSolventShrinkageRadii() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_solvent_shrinkage_radii", this);
        }

        public FloatColumnBuilder enterPdbxRealSpaceR() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_real_space_R", this);
        }

        public FloatColumnBuilder enterPdbxDensityCorrelation() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_density_correlation", this);
        }

        public IntColumnBuilder enterPdbxPdNumberOfPowderPatterns() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_pd_number_of_powder_patterns", this);
        }

        public IntColumnBuilder enterPdbxPdNumberOfPoints() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_pd_number_of_points", this);
        }

        public IntColumnBuilder enterPdbxPdMeasNumberOfPoints() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_pd_meas_number_of_points", this);
        }

        public FloatColumnBuilder enterPdbxPdProcLsProfRFactor() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_pd_proc_ls_prof_R_factor", this);
        }

        public FloatColumnBuilder enterPdbxPdProcLsProfWRFactor() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_pd_proc_ls_prof_wR_factor", this);
        }

        public FloatColumnBuilder enterPdbxPdMarquardtCorrelationCoeff() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_pd_Marquardt_correlation_coeff", this);
        }

        public FloatColumnBuilder enterPdbxPdFsqrdRFactor() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_pd_Fsqrd_R_factor", this);
        }

        public IntColumnBuilder enterPdbxPdLsMatrixBandWidth() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_pd_ls_matrix_band_width", this);
        }

        public FloatColumnBuilder enterPdbxOverallPhaseError() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_overall_phase_error", this);
        }

        public FloatColumnBuilder enterPdbxOverallSURFreeCruickshankDPI() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_overall_SU_R_free_Cruickshank_DPI", this);
        }

        public FloatColumnBuilder enterPdbxOverallSURFreeBlowDPI() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_overall_SU_R_free_Blow_DPI", this);
        }

        public FloatColumnBuilder enterPdbxOverallSURBlowDPI() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_overall_SU_R_Blow_DPI", this);
        }

        public StrColumnBuilder enterPdbxTLSResidualADPFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_TLS_residual_ADP_flag", this);
        }

        public StrColumnBuilder enterPdbxDiffrnId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_diffrn_id", this);
        }

        public FloatColumnBuilder enterOverallSUB() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "overall_SU_B", this);
        }

        public FloatColumnBuilder enterOverallSUML() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "overall_SU_ML", this);
        }

        public FloatColumnBuilder enterOverallSURCruickshankDPI() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "overall_SU_R_Cruickshank_DPI", this);
        }

        public FloatColumnBuilder enterOverallSURFree() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "overall_SU_R_free", this);
        }

        public FloatColumnBuilder enterOverallFOMFreeRSet() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "overall_FOM_free_R_set", this);
        }

        public FloatColumnBuilder enterOverallFOMWorkRSet() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "overall_FOM_work_R_set", this);
        }

        public FloatColumnBuilder enterPdbxAverageFscOverall() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_average_fsc_overall", this);
        }

        public FloatColumnBuilder enterPdbxAverageFscWork() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_average_fsc_work", this);
        }

        public FloatColumnBuilder enterPdbxAverageFscFree() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_average_fsc_free", this);
        }

        public FloatColumnBuilder enterPdbxOverallESUB() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_overall_ESU_B", this);
        }

        public FloatColumnBuilder enterPdbxOverallESUML() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_overall_ESU_ML", this);
        }

    }

    public static class RefineAnalyzeBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "refine_analyze";

        public RefineAnalyzeBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterPdbxRefineId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_refine_id", this);
        }

        public FloatColumnBuilder enterLuzzatiCoordinateErrorFree() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Luzzati_coordinate_error_free", this);
        }

        public FloatColumnBuilder enterLuzzatiCoordinateErrorObs() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Luzzati_coordinate_error_obs", this);
        }

        public FloatColumnBuilder enterLuzzatiDResLowFree() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Luzzati_d_res_low_free", this);
        }

        public FloatColumnBuilder enterLuzzatiDResLowObs() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Luzzati_d_res_low_obs", this);
        }

        public FloatColumnBuilder enterLuzzatiSigmaAFree() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Luzzati_sigma_a_free", this);
        }

        public StrColumnBuilder enterLuzzatiSigmaAFreeDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "Luzzati_sigma_a_free_details", this);
        }

        public FloatColumnBuilder enterLuzzatiSigmaAObs() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Luzzati_sigma_a_obs", this);
        }

        public StrColumnBuilder enterLuzzatiSigmaAObsDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "Luzzati_sigma_a_obs_details", this);
        }

        public FloatColumnBuilder enterNumberDisorderedResidues() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "number_disordered_residues", this);
        }

        public FloatColumnBuilder enterOccupancySumHydrogen() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "occupancy_sum_hydrogen", this);
        }

        public FloatColumnBuilder enterOccupancySumNonHydrogen() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "occupancy_sum_non_hydrogen", this);
        }

        public FloatColumnBuilder enterRGDResHigh() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "RG_d_res_high", this);
        }

        public FloatColumnBuilder enterRGDResLow() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "RG_d_res_low", this);
        }

        public FloatColumnBuilder enterRGFree() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "RG_free", this);
        }

        public FloatColumnBuilder enterRGWork() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "RG_work", this);
        }

        public FloatColumnBuilder enterRGFreeWorkRatio() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "RG_free_work_ratio", this);
        }

        public FloatColumnBuilder enterPdbxLuzzatiDResHighObs() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_Luzzati_d_res_high_obs", this);
        }

    }

    public static class RefineBIsoBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "refine_B_iso";

        public RefineBIsoBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterPdbxRefineId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_refine_id", this);
        }

        public StrColumnBuilder enterClazz() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "class", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterTreatment() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "treatment", this);
        }

        public FloatColumnBuilder enterValue() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "value", this);
        }

        public StrColumnBuilder enterPdbxResidueName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_residue_name", this);
        }

        public StrColumnBuilder enterPdbxStrand() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_strand", this);
        }

        public StrColumnBuilder enterPdbxResidueNum() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_residue_num", this);
        }

    }

    public static class RefineFunctMinimizedBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "refine_funct_minimized";

        public RefineFunctMinimizedBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterPdbxRefineId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_refine_id", this);
        }

        public IntColumnBuilder enterNumberTerms() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number_terms", this);
        }

        public FloatColumnBuilder enterResidual() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "residual", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public FloatColumnBuilder enterWeight() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "weight", this);
        }

    }

    public static class RefineHistBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "refine_hist";

        public RefineHistBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterPdbxRefineId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_refine_id", this);
        }

        public StrColumnBuilder enterCycleId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "cycle_id", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public FloatColumnBuilder enterDResHigh() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "d_res_high", this);
        }

        public FloatColumnBuilder enterDResLow() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "d_res_low", this);
        }

        public IntColumnBuilder enterNumberAtomsSolvent() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number_atoms_solvent", this);
        }

        public IntColumnBuilder enterNumberAtomsTotal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number_atoms_total", this);
        }

        public IntColumnBuilder enterNumberReflnsAll() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number_reflns_all", this);
        }

        public IntColumnBuilder enterNumberReflnsObs() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number_reflns_obs", this);
        }

        public IntColumnBuilder enterNumberReflnsRFree() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number_reflns_R_free", this);
        }

        public IntColumnBuilder enterNumberReflnsRWork() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number_reflns_R_work", this);
        }

        public FloatColumnBuilder enterRFactorAll() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "R_factor_all", this);
        }

        public FloatColumnBuilder enterRFactorObs() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "R_factor_obs", this);
        }

        public FloatColumnBuilder enterRFactorRFree() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "R_factor_R_free", this);
        }

        public FloatColumnBuilder enterRFactorRWork() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "R_factor_R_work", this);
        }

        public IntColumnBuilder enterPdbxNumberResiduesTotal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_number_residues_total", this);
        }

        public FloatColumnBuilder enterPdbxBIsoMeanLigand() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_B_iso_mean_ligand", this);
        }

        public FloatColumnBuilder enterPdbxBIsoMeanSolvent() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_B_iso_mean_solvent", this);
        }

        public IntColumnBuilder enterPdbxNumberAtomsProtein() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_number_atoms_protein", this);
        }

        public IntColumnBuilder enterPdbxNumberAtomsNucleicAcid() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_number_atoms_nucleic_acid", this);
        }

        public IntColumnBuilder enterPdbxNumberAtomsLigand() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_number_atoms_ligand", this);
        }

        public IntColumnBuilder enterPdbxNumberAtomsLipid() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_number_atoms_lipid", this);
        }

        public IntColumnBuilder enterPdbxNumberAtomsCarb() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_number_atoms_carb", this);
        }

        public StrColumnBuilder enterPdbxPseudoAtomDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_pseudo_atom_details", this);
        }

        public IntColumnBuilder enterPdbxNumberAtomsSolvent() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_number_atoms_solvent", this);
        }

        public IntColumnBuilder enterPdbxNumberAtomsTotal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_number_atoms_total", this);
        }

    }

    public static class RefineLsRestrBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "refine_ls_restr";

        public RefineLsRestrBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterPdbxRefineId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_refine_id", this);
        }

        public StrColumnBuilder enterCriterion() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "criterion", this);
        }

        public FloatColumnBuilder enterDevIdeal() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "dev_ideal", this);
        }

        public FloatColumnBuilder enterDevIdealTarget() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "dev_ideal_target", this);
        }

        public IntColumnBuilder enterNumber() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number", this);
        }

        public IntColumnBuilder enterRejects() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "rejects", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public FloatColumnBuilder enterWeight() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "weight", this);
        }

        public StrColumnBuilder enterPdbxRestraintFunction() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_restraint_function", this);
        }

    }

    public static class RefineLsRestrNcsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "refine_ls_restr_ncs";

        public RefineLsRestrNcsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterPdbxRefineId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_refine_id", this);
        }

        public StrColumnBuilder enterDomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "dom_id", this);
        }

        public StrColumnBuilder enterNcsModelDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ncs_model_details", this);
        }

        public FloatColumnBuilder enterRmsDevBIso() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rms_dev_B_iso", this);
        }

        public FloatColumnBuilder enterRmsDevPosition() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rms_dev_position", this);
        }

        public FloatColumnBuilder enterWeightBIso() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "weight_B_iso", this);
        }

        public FloatColumnBuilder enterWeightPosition() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "weight_position", this);
        }

        public IntColumnBuilder enterPdbxOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_ordinal", this);
        }

        public StrColumnBuilder enterPdbxType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_type", this);
        }

        public StrColumnBuilder enterPdbxAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_asym_id", this);
        }

        public StrColumnBuilder enterPdbxAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_auth_asym_id", this);
        }

        public IntColumnBuilder enterPdbxNumber() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_number", this);
        }

        public FloatColumnBuilder enterPdbxRms() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_rms", this);
        }

        public FloatColumnBuilder enterPdbxWeight() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_weight", this);
        }

        public StrColumnBuilder enterPdbxEnsId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_ens_id", this);
        }

    }

    public static class RefineLsRestrTypeBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "refine_ls_restr_type";

        public RefineLsRestrTypeBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public FloatColumnBuilder enterDistanceCutoffHigh() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "distance_cutoff_high", this);
        }

        public FloatColumnBuilder enterDistanceCutoffLow() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "distance_cutoff_low", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

    }

    public static class RefineLsShellBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "refine_ls_shell";

        public RefineLsShellBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterPdbxRefineId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_refine_id", this);
        }

        public FloatColumnBuilder enterDResHigh() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "d_res_high", this);
        }

        public FloatColumnBuilder enterDResLow() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "d_res_low", this);
        }

        public IntColumnBuilder enterNumberReflnsAll() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number_reflns_all", this);
        }

        public IntColumnBuilder enterNumberReflnsObs() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number_reflns_obs", this);
        }

        public IntColumnBuilder enterNumberReflnsRFree() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number_reflns_R_free", this);
        }

        public IntColumnBuilder enterNumberReflnsRWork() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number_reflns_R_work", this);
        }

        public FloatColumnBuilder enterPercentReflnsObs() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "percent_reflns_obs", this);
        }

        public FloatColumnBuilder enterPercentReflnsRFree() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "percent_reflns_R_free", this);
        }

        public FloatColumnBuilder enterRFactorAll() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "R_factor_all", this);
        }

        public FloatColumnBuilder enterRFactorObs() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "R_factor_obs", this);
        }

        public FloatColumnBuilder enterRFactorRFreeError() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "R_factor_R_free_error", this);
        }

        public FloatColumnBuilder enterRFactorRWork() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "R_factor_R_work", this);
        }

        public FloatColumnBuilder enterRedundancyReflnsAll() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "redundancy_reflns_all", this);
        }

        public FloatColumnBuilder enterRedundancyReflnsObs() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "redundancy_reflns_obs", this);
        }

        public FloatColumnBuilder enterWRFactorAll() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "wR_factor_all", this);
        }

        public FloatColumnBuilder enterWRFactorObs() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "wR_factor_obs", this);
        }

        public FloatColumnBuilder enterWRFactorRFree() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "wR_factor_R_free", this);
        }

        public FloatColumnBuilder enterWRFactorRWork() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "wR_factor_R_work", this);
        }

        public FloatColumnBuilder enterPdbxRComplete() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_R_complete", this);
        }

        public IntColumnBuilder enterPdbxTotalNumberOfBinsUsed() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_total_number_of_bins_used", this);
        }

        public FloatColumnBuilder enterPdbxPhaseError() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_phase_error", this);
        }

        public FloatColumnBuilder enterPdbxFscWork() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_fsc_work", this);
        }

        public FloatColumnBuilder enterPdbxFscFree() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_fsc_free", this);
        }

        public FloatColumnBuilder enterRFactorRFree() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "R_factor_R_free", this);
        }

    }

    public static class RefineOccupancyBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "refine_occupancy";

        public RefineOccupancyBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterPdbxRefineId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_refine_id", this);
        }

        public StrColumnBuilder enterClazz() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "class", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterTreatment() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "treatment", this);
        }

        public FloatColumnBuilder enterValue() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "value", this);
        }

    }

    public static class ReflnBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "refln";

        public ReflnBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public FloatColumnBuilder enterACalc() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "A_calc", this);
        }

        public FloatColumnBuilder enterACalcAu() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "A_calc_au", this);
        }

        public FloatColumnBuilder enterAMeas() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "A_meas", this);
        }

        public FloatColumnBuilder enterAMeasAu() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "A_meas_au", this);
        }

        public FloatColumnBuilder enterBCalc() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "B_calc", this);
        }

        public FloatColumnBuilder enterBCalcAu() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "B_calc_au", this);
        }

        public FloatColumnBuilder enterBMeas() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "B_meas", this);
        }

        public FloatColumnBuilder enterBMeasAu() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "B_meas_au", this);
        }

        public StrColumnBuilder enterCrystalId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "crystal_id", this);
        }

        public FloatColumnBuilder enterFCalc() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "F_calc", this);
        }

        public FloatColumnBuilder enterFCalcAu() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "F_calc_au", this);
        }

        public FloatColumnBuilder enterFMeas() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "F_meas", this);
        }

        public FloatColumnBuilder enterFMeasAu() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "F_meas_au", this);
        }

        public FloatColumnBuilder enterFMeasSigma() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "F_meas_sigma", this);
        }

        public FloatColumnBuilder enterFMeasSigmaAu() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "F_meas_sigma_au", this);
        }

        public FloatColumnBuilder enterFSquaredCalc() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "F_squared_calc", this);
        }

        public FloatColumnBuilder enterFSquaredMeas() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "F_squared_meas", this);
        }

        public FloatColumnBuilder enterFSquaredSigma() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "F_squared_sigma", this);
        }

        public FloatColumnBuilder enterFom() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "fom", this);
        }

        public IntColumnBuilder enterIndexH() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "index_h", this);
        }

        public IntColumnBuilder enterIndexK() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "index_k", this);
        }

        public IntColumnBuilder enterIndexL() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "index_l", this);
        }

        public FloatColumnBuilder enterIntensityCalc() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "intensity_calc", this);
        }

        public FloatColumnBuilder enterIntensityMeas() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "intensity_meas", this);
        }

        public FloatColumnBuilder enterIntensitySigma() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "intensity_sigma", this);
        }

        public StrColumnBuilder enterStatus() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "status", this);
        }

        public FloatColumnBuilder enterPhaseCalc() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "phase_calc", this);
        }

        public FloatColumnBuilder enterPhaseMeas() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "phase_meas", this);
        }

        public StrColumnBuilder enterRefinementStatus() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "refinement_status", this);
        }

        public StrColumnBuilder enterScaleGroupCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "scale_group_code", this);
        }

        public FloatColumnBuilder enterSintOverLambda() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "sint_over_lambda", this);
        }

        public IntColumnBuilder enterSymmetryEpsilon() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "symmetry_epsilon", this);
        }

        public IntColumnBuilder enterSymmetryMultiplicity() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "symmetry_multiplicity", this);
        }

        public FloatColumnBuilder enterWavelength() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "wavelength", this);
        }

        public StrColumnBuilder enterWavelengthId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "wavelength_id", this);
        }

        public StrColumnBuilder enterClassCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "class_code", this);
        }

        public FloatColumnBuilder enterDSpacing() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "d_spacing", this);
        }

        public StrColumnBuilder enterIncludeStatus() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "include_status", this);
        }

        public FloatColumnBuilder enterMeanPathLengthTbar() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "mean_path_length_tbar", this);
        }

        public FloatColumnBuilder enterPdbxFCalcPartSolvent() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_F_calc_part_solvent", this);
        }

        public FloatColumnBuilder enterPdbxPhaseCalcPartSolvent() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_phase_calc_part_solvent", this);
        }

        public FloatColumnBuilder enterPdbxFCalcWithSolvent() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_F_calc_with_solvent", this);
        }

        public FloatColumnBuilder enterPdbxPhaseCalcWithSolvent() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_phase_calc_with_solvent", this);
        }

        public FloatColumnBuilder enterPdbxAnomDifference() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_anom_difference", this);
        }

        public FloatColumnBuilder enterPdbxAnomDifferenceSigma() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_anom_difference_sigma", this);
        }

        public FloatColumnBuilder enterPdbxIPlus() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_I_plus", this);
        }

        public FloatColumnBuilder enterPdbxIMinus() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_I_minus", this);
        }

        public FloatColumnBuilder enterPdbxFPlus() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_F_plus", this);
        }

        public FloatColumnBuilder enterPdbxFMinus() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_F_minus", this);
        }

        public FloatColumnBuilder enterPdbxIPlusSigma() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_I_plus_sigma", this);
        }

        public FloatColumnBuilder enterPdbxIMinusSigma() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_I_minus_sigma", this);
        }

        public FloatColumnBuilder enterPdbxFMinusSigma() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_F_minus_sigma", this);
        }

        public FloatColumnBuilder enterPdbxFPlusSigma() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_F_plus_sigma", this);
        }

        public FloatColumnBuilder enterPdbxHLAIso() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_HL_A_iso", this);
        }

        public FloatColumnBuilder enterPdbxHLBIso() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_HL_B_iso", this);
        }

        public FloatColumnBuilder enterPdbxHLCIso() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_HL_C_iso", this);
        }

        public FloatColumnBuilder enterPdbxHLDIso() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_HL_D_iso", this);
        }

        public IntColumnBuilder enterPdbxFiberLayer() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_fiber_layer", this);
        }

        public FloatColumnBuilder enterPdbxFiberCoordinate() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_fiber_coordinate", this);
        }

        public FloatColumnBuilder enterPdbxFiberFMeasAu() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_fiber_F_meas_au", this);
        }

        public FloatColumnBuilder enterPdbxFWT() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_FWT", this);
        }

        public FloatColumnBuilder enterPdbxPHWT() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_PHWT", this);
        }

        public FloatColumnBuilder enterPdbxDELFWT() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_DELFWT", this);
        }

        public FloatColumnBuilder enterPdbxDELPHWT() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_DELPHWT", this);
        }

        public StrColumnBuilder enterPdbxDiffrnId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_diffrn_id", this);
        }

        public IntColumnBuilder enterPdbxRFreeFlag() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_r_free_flag", this);
        }

        public FloatColumnBuilder enterPdbxAnomalousDiff() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_anomalous_diff", this);
        }

        public FloatColumnBuilder enterPdbxAnomalousDiffSigma() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_anomalous_diff_sigma", this);
        }

        public FloatColumnBuilder enterPdbxPhaseCycle() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_phase_cycle", this);
        }

        public FloatColumnBuilder enterPdbxCosPhaseCalc() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_cos_phase_calc", this);
        }

        public FloatColumnBuilder enterPdbxSinPhaseCalc() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_sin_phase_calc", this);
        }

        public FloatColumnBuilder enterPdbxSignal() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_signal", this);
        }

        public StrColumnBuilder enterPdbxSignalStatus() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_signal_status", this);
        }

    }

    public static class ReflnSysAbsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "refln_sys_abs";

        public ReflnSysAbsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public FloatColumnBuilder enterI() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "I", this);
        }

        public FloatColumnBuilder enterIOverSigmaI() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "I_over_sigmaI", this);
        }

        public IntColumnBuilder enterIndexH() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "index_h", this);
        }

        public IntColumnBuilder enterIndexK() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "index_k", this);
        }

        public IntColumnBuilder enterIndexL() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "index_l", this);
        }

        public FloatColumnBuilder enterSigmaI() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "sigmaI", this);
        }

    }

    public static class ReflnsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "reflns";

        public ReflnsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public FloatColumnBuilder enterBIsoWilsonEstimate() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "B_iso_Wilson_estimate", this);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterDataReductionDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "data_reduction_details", this);
        }

        public StrColumnBuilder enterDataReductionMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "data_reduction_method", this);
        }

        public FloatColumnBuilder enterDResolutionHigh() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "d_resolution_high", this);
        }

        public FloatColumnBuilder enterDResolutionLow() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "d_resolution_low", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public IntColumnBuilder enterLimitHMax() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "limit_h_max", this);
        }

        public IntColumnBuilder enterLimitHMin() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "limit_h_min", this);
        }

        public IntColumnBuilder enterLimitKMax() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "limit_k_max", this);
        }

        public IntColumnBuilder enterLimitKMin() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "limit_k_min", this);
        }

        public IntColumnBuilder enterLimitLMax() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "limit_l_max", this);
        }

        public IntColumnBuilder enterLimitLMin() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "limit_l_min", this);
        }

        public IntColumnBuilder enterNumberAll() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number_all", this);
        }

        public IntColumnBuilder enterNumberObs() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number_obs", this);
        }

        public StrColumnBuilder enterObservedCriterion() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "observed_criterion", this);
        }

        public FloatColumnBuilder enterObservedCriterionFMax() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "observed_criterion_F_max", this);
        }

        public FloatColumnBuilder enterObservedCriterionFMin() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "observed_criterion_F_min", this);
        }

        public FloatColumnBuilder enterObservedCriterionIMax() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "observed_criterion_I_max", this);
        }

        public FloatColumnBuilder enterObservedCriterionIMin() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "observed_criterion_I_min", this);
        }

        public FloatColumnBuilder enterObservedCriterionSigmaF() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "observed_criterion_sigma_F", this);
        }

        public FloatColumnBuilder enterObservedCriterionSigmaI() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "observed_criterion_sigma_I", this);
        }

        public FloatColumnBuilder enterPercentPossibleObs() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "percent_possible_obs", this);
        }

        public StrColumnBuilder enterRFreeDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "R_free_details", this);
        }

        public FloatColumnBuilder enterRmergeFAll() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Rmerge_F_all", this);
        }

        public FloatColumnBuilder enterRmergeFObs() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Rmerge_F_obs", this);
        }

        public FloatColumnBuilder enterFriedelCoverage() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Friedel_coverage", this);
        }

        public IntColumnBuilder enterNumberGt() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number_gt", this);
        }

        public StrColumnBuilder enterThresholdExpression() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "threshold_expression", this);
        }

        public FloatColumnBuilder enterPdbxRedundancy() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_redundancy", this);
        }

        public FloatColumnBuilder enterPdbxNetIOverAvSigmaI() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_netI_over_av_sigmaI", this);
        }

        public FloatColumnBuilder enterPdbxNetIOverSigmaI() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_netI_over_sigmaI", this);
        }

        public FloatColumnBuilder enterPdbxResNetIOverAvSigmaI2() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_res_netI_over_av_sigmaI_2", this);
        }

        public FloatColumnBuilder enterPdbxResNetIOverSigmaI2() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_res_netI_over_sigmaI_2", this);
        }

        public FloatColumnBuilder enterPdbxChiSquared() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_chi_squared", this);
        }

        public IntColumnBuilder enterPdbxScalingRejects() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_scaling_rejects", this);
        }

        public FloatColumnBuilder enterPdbxDResHighOpt() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_d_res_high_opt", this);
        }

        public FloatColumnBuilder enterPdbxDResLowOpt() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_d_res_low_opt", this);
        }

        public StrColumnBuilder enterPdbxDResOptMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_d_res_opt_method", this);
        }

        public StrColumnBuilder enterPhaseCalculationDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "phase_calculation_details", this);
        }

        public FloatColumnBuilder enterPdbxRrimIAll() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_Rrim_I_all", this);
        }

        public FloatColumnBuilder enterPdbxRpimIAll() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_Rpim_I_all", this);
        }

        public FloatColumnBuilder enterPdbxDOpt() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_d_opt", this);
        }

        public IntColumnBuilder enterPdbxNumberMeasuredAll() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_number_measured_all", this);
        }

        public StrColumnBuilder enterPdbxDiffrnId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_diffrn_id", this);
        }

        public IntColumnBuilder enterPdbxOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_ordinal", this);
        }

        public FloatColumnBuilder enterPdbxCCHalf() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_CC_half", this);
        }

        public FloatColumnBuilder enterPdbxCCStar() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_CC_star", this);
        }

        public FloatColumnBuilder enterPdbxRSplit() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_R_split", this);
        }

        public FloatColumnBuilder enterPdbxRedundancyReflnsObs() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_redundancy_reflns_obs", this);
        }

        public IntColumnBuilder enterPdbxNumberAnomalous() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_number_anomalous", this);
        }

        public FloatColumnBuilder enterPdbxRrimIAllAnomalous() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_Rrim_I_all_anomalous", this);
        }

        public FloatColumnBuilder enterPdbxRpimIAllAnomalous() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_Rpim_I_all_anomalous", this);
        }

        public FloatColumnBuilder enterPdbxRmergeIAnomalous() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_Rmerge_I_anomalous", this);
        }

        public FloatColumnBuilder enterPdbxRmergeIObs() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_Rmerge_I_obs", this);
        }

        public FloatColumnBuilder enterPdbxRmergeIAll() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_Rmerge_I_all", this);
        }

        public FloatColumnBuilder enterPdbxRsymValue() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_Rsym_value", this);
        }

        public FloatColumnBuilder enterPdbxAnisoDiffractionLimitAxis1Ortho1() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_aniso_diffraction_limit_axis_1_ortho[1]", this);
        }

        public FloatColumnBuilder enterPdbxAnisoDiffractionLimitAxis1Ortho2() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_aniso_diffraction_limit_axis_1_ortho[2]", this);
        }

        public FloatColumnBuilder enterPdbxAnisoDiffractionLimitAxis1Ortho3() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_aniso_diffraction_limit_axis_1_ortho[3]", this);
        }

        public FloatColumnBuilder enterPdbxAnisoDiffractionLimitAxis2Ortho1() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_aniso_diffraction_limit_axis_2_ortho[1]", this);
        }

        public FloatColumnBuilder enterPdbxAnisoDiffractionLimitAxis2Ortho2() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_aniso_diffraction_limit_axis_2_ortho[2]", this);
        }

        public FloatColumnBuilder enterPdbxAnisoDiffractionLimitAxis2Ortho3() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_aniso_diffraction_limit_axis_2_ortho[3]", this);
        }

        public FloatColumnBuilder enterPdbxAnisoDiffractionLimitAxis3Ortho1() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_aniso_diffraction_limit_axis_3_ortho[1]", this);
        }

        public FloatColumnBuilder enterPdbxAnisoDiffractionLimitAxis3Ortho2() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_aniso_diffraction_limit_axis_3_ortho[2]", this);
        }

        public FloatColumnBuilder enterPdbxAnisoDiffractionLimitAxis3Ortho3() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_aniso_diffraction_limit_axis_3_ortho[3]", this);
        }

        public FloatColumnBuilder enterPdbxAnisoDiffractionLimit1() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_aniso_diffraction_limit_1", this);
        }

        public FloatColumnBuilder enterPdbxAnisoDiffractionLimit2() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_aniso_diffraction_limit_2", this);
        }

        public FloatColumnBuilder enterPdbxAnisoDiffractionLimit3() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_aniso_diffraction_limit_3", this);
        }

        public FloatColumnBuilder enterPdbxAnisoBTensorEigenvector1Ortho1() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_aniso_B_tensor_eigenvector_1_ortho[1]", this);
        }

        public FloatColumnBuilder enterPdbxAnisoBTensorEigenvector1Ortho2() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_aniso_B_tensor_eigenvector_1_ortho[2]", this);
        }

        public FloatColumnBuilder enterPdbxAnisoBTensorEigenvector1Ortho3() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_aniso_B_tensor_eigenvector_1_ortho[3]", this);
        }

        public FloatColumnBuilder enterPdbxAnisoBTensorEigenvector2Ortho1() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_aniso_B_tensor_eigenvector_2_ortho[1]", this);
        }

        public FloatColumnBuilder enterPdbxAnisoBTensorEigenvector2Ortho2() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_aniso_B_tensor_eigenvector_2_ortho[2]", this);
        }

        public FloatColumnBuilder enterPdbxAnisoBTensorEigenvector2Ortho3() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_aniso_B_tensor_eigenvector_2_ortho[3]", this);
        }

        public FloatColumnBuilder enterPdbxAnisoBTensorEigenvector3Ortho1() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_aniso_B_tensor_eigenvector_3_ortho[1]", this);
        }

        public FloatColumnBuilder enterPdbxAnisoBTensorEigenvector3Ortho2() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_aniso_B_tensor_eigenvector_3_ortho[2]", this);
        }

        public FloatColumnBuilder enterPdbxAnisoBTensorEigenvector3Ortho3() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_aniso_B_tensor_eigenvector_3_ortho[3]", this);
        }

        public FloatColumnBuilder enterPdbxAnisoBTensorEigenvalue1() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_aniso_B_tensor_eigenvalue_1", this);
        }

        public FloatColumnBuilder enterPdbxAnisoBTensorEigenvalue2() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_aniso_B_tensor_eigenvalue_2", this);
        }

        public FloatColumnBuilder enterPdbxAnisoBTensorEigenvalue3() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_aniso_B_tensor_eigenvalue_3", this);
        }

        public StrColumnBuilder enterPdbxOrthogonalizationConvention() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_orthogonalization_convention", this);
        }

        public FloatColumnBuilder enterPdbxPercentPossibleEllipsoidal() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_percent_possible_ellipsoidal", this);
        }

        public FloatColumnBuilder enterPdbxPercentPossibleSpherical() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_percent_possible_spherical", this);
        }

        public FloatColumnBuilder enterPdbxPercentPossibleEllipsoidalAnomalous() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_percent_possible_ellipsoidal_anomalous", this);
        }

        public FloatColumnBuilder enterPdbxPercentPossibleSphericalAnomalous() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_percent_possible_spherical_anomalous", this);
        }

        public FloatColumnBuilder enterPdbxRedundancyAnomalous() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_redundancy_anomalous", this);
        }

        public FloatColumnBuilder enterPdbxCCHalfAnomalous() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_CC_half_anomalous", this);
        }

        public FloatColumnBuilder enterPdbxAbsDiffOverSigmaAnomalous() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_absDiff_over_sigma_anomalous", this);
        }

        public FloatColumnBuilder enterPdbxPercentPossibleAnomalous() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_percent_possible_anomalous", this);
        }

        public FloatColumnBuilder enterPdbxObservedSignalThreshold() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_observed_signal_threshold", this);
        }

        public StrColumnBuilder enterPdbxSignalType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_signal_type", this);
        }

        public StrColumnBuilder enterPdbxSignalDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_signal_details", this);
        }

        public StrColumnBuilder enterPdbxSignalSoftwareId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_signal_software_id", this);
        }

        public StrColumnBuilder enterPdbxCCSplitMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_CC_split_method", this);
        }

    }

    public static class ReflnsScaleBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "reflns_scale";

        public ReflnsScaleBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterGroupCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "group_code", this);
        }

        public FloatColumnBuilder enterMeasF() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "meas_F", this);
        }

        public FloatColumnBuilder enterMeasFSquared() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "meas_F_squared", this);
        }

        public FloatColumnBuilder enterMeasIntensity() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "meas_intensity", this);
        }

    }

    public static class ReflnsShellBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "reflns_shell";

        public ReflnsShellBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public FloatColumnBuilder enterDResHigh() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "d_res_high", this);
        }

        public FloatColumnBuilder enterDResLow() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "d_res_low", this);
        }

        public FloatColumnBuilder enterMeanIOverSigIAll() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "meanI_over_sigI_all", this);
        }

        public FloatColumnBuilder enterMeanIOverSigIObs() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "meanI_over_sigI_obs", this);
        }

        public IntColumnBuilder enterNumberMeasuredAll() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number_measured_all", this);
        }

        public IntColumnBuilder enterNumberMeasuredObs() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number_measured_obs", this);
        }

        public IntColumnBuilder enterNumberPossible() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number_possible", this);
        }

        public IntColumnBuilder enterNumberUniqueAll() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number_unique_all", this);
        }

        public IntColumnBuilder enterNumberUniqueObs() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number_unique_obs", this);
        }

        public FloatColumnBuilder enterPercentPossibleObs() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "percent_possible_obs", this);
        }

        public FloatColumnBuilder enterRmergeFAll() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Rmerge_F_all", this);
        }

        public FloatColumnBuilder enterRmergeFObs() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Rmerge_F_obs", this);
        }

        public FloatColumnBuilder enterMeanIOverSigIGt() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "meanI_over_sigI_gt", this);
        }

        public FloatColumnBuilder enterMeanIOverUIAll() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "meanI_over_uI_all", this);
        }

        public FloatColumnBuilder enterMeanIOverUIGt() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "meanI_over_uI_gt", this);
        }

        public IntColumnBuilder enterNumberMeasuredGt() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number_measured_gt", this);
        }

        public IntColumnBuilder enterNumberUniqueGt() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number_unique_gt", this);
        }

        public FloatColumnBuilder enterPercentPossibleGt() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "percent_possible_gt", this);
        }

        public FloatColumnBuilder enterRmergeFGt() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Rmerge_F_gt", this);
        }

        public FloatColumnBuilder enterRmergeIGt() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Rmerge_I_gt", this);
        }

        public FloatColumnBuilder enterPdbxRedundancy() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_redundancy", this);
        }

        public FloatColumnBuilder enterPdbxChiSquared() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_chi_squared", this);
        }

        public FloatColumnBuilder enterPdbxNetIOverSigmaIAll() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_netI_over_sigmaI_all", this);
        }

        public FloatColumnBuilder enterPdbxNetIOverSigmaIObs() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_netI_over_sigmaI_obs", this);
        }

        public FloatColumnBuilder enterPdbxRrimIAll() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_Rrim_I_all", this);
        }

        public FloatColumnBuilder enterPdbxRpimIAll() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_Rpim_I_all", this);
        }

        public IntColumnBuilder enterPdbxRejects() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_rejects", this);
        }

        public IntColumnBuilder enterPdbxOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_ordinal", this);
        }

        public StrColumnBuilder enterPdbxDiffrnId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_diffrn_id", this);
        }

        public FloatColumnBuilder enterPdbxCCHalf() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_CC_half", this);
        }

        public FloatColumnBuilder enterPdbxCCStar() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_CC_star", this);
        }

        public FloatColumnBuilder enterPdbxRSplit() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_R_split", this);
        }

        public FloatColumnBuilder enterPdbxRedundancyReflnsObs() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_redundancy_reflns_obs", this);
        }

        public IntColumnBuilder enterPdbxNumberAnomalous() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_number_anomalous", this);
        }

        public FloatColumnBuilder enterPdbxRrimIAllAnomalous() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_Rrim_I_all_anomalous", this);
        }

        public FloatColumnBuilder enterPdbxRpimIAllAnomalous() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_Rpim_I_all_anomalous", this);
        }

        public FloatColumnBuilder enterPdbxRmergeIAllAnomalous() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_Rmerge_I_all_anomalous", this);
        }

        public FloatColumnBuilder enterPercentPossibleAll() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "percent_possible_all", this);
        }

        public FloatColumnBuilder enterRmergeIAll() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Rmerge_I_all", this);
        }

        public FloatColumnBuilder enterRmergeIObs() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Rmerge_I_obs", this);
        }

        public FloatColumnBuilder enterPdbxRsymValue() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_Rsym_value", this);
        }

        public FloatColumnBuilder enterPdbxPercentPossibleEllipsoidal() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_percent_possible_ellipsoidal", this);
        }

        public FloatColumnBuilder enterPdbxPercentPossibleSpherical() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_percent_possible_spherical", this);
        }

        public FloatColumnBuilder enterPdbxPercentPossibleEllipsoidalAnomalous() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_percent_possible_ellipsoidal_anomalous", this);
        }

        public FloatColumnBuilder enterPdbxPercentPossibleSphericalAnomalous() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_percent_possible_spherical_anomalous", this);
        }

        public FloatColumnBuilder enterPdbxRedundancyAnomalous() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_redundancy_anomalous", this);
        }

        public FloatColumnBuilder enterPdbxCCHalfAnomalous() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_CC_half_anomalous", this);
        }

        public FloatColumnBuilder enterPdbxAbsDiffOverSigmaAnomalous() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_absDiff_over_sigma_anomalous", this);
        }

        public FloatColumnBuilder enterPdbxPercentPossibleAnomalous() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_percent_possible_anomalous", this);
        }

    }

    public static class SoftwareBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "software";

        public SoftwareBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterCitationId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "citation_id", this);
        }

        public StrColumnBuilder enterClassification() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "classification", this);
        }

        public StrColumnBuilder enterCompilerName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "compiler_name", this);
        }

        public StrColumnBuilder enterCompilerVersion() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "compiler_version", this);
        }

        public StrColumnBuilder enterContactAuthor() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "contact_author", this);
        }

        public StrColumnBuilder enterContactAuthorEmail() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "contact_author_email", this);
        }

        public StrColumnBuilder enterDate() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date", this);
        }

        public StrColumnBuilder enterDescription() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "description", this);
        }

        public StrColumnBuilder enterDependencies() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "dependencies", this);
        }

        public StrColumnBuilder enterHardware() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "hardware", this);
        }

        public StrColumnBuilder enterLanguage() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "language", this);
        }

        public StrColumnBuilder enterLocation() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "location", this);
        }

        public StrColumnBuilder enterMods() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "mods", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public StrColumnBuilder enterOs() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "os", this);
        }

        public StrColumnBuilder enterOsVersion() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "os_version", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public StrColumnBuilder enterVersion() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "version", this);
        }

        public IntColumnBuilder enterPdbxOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_ordinal", this);
        }

    }

    public static class StructBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "struct";

        public StructBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterTitle() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "title", this);
        }

        public FloatColumnBuilder enterPdbxCenterOfMassX() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_center_of_mass_x", this);
        }

        public FloatColumnBuilder enterPdbxCenterOfMassY() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_center_of_mass_y", this);
        }

        public FloatColumnBuilder enterPdbxCenterOfMassZ() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_center_of_mass_z", this);
        }

        public StrColumnBuilder enterPdbxStructureDeterminationMethodology() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_structure_determination_methodology", this);
        }

        public StrColumnBuilder enterPdbxDescriptor() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_descriptor", this);
        }

        public StrColumnBuilder enterPdbxModelDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_model_details", this);
        }

        public FloatColumnBuilder enterPdbxFormulaWeight() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_formula_weight", this);
        }

        public StrColumnBuilder enterPdbxFormulaWeightMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_formula_weight_method", this);
        }

        public StrColumnBuilder enterPdbxModelTypeDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_model_type_details", this);
        }

        public StrColumnBuilder enterPdbxCASPFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_CASP_flag", this);
        }

        public StrColumnBuilder enterPdbxDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_details", this);
        }

        public StrColumnBuilder enterPdbxTitleText() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_title_text", this);
        }

    }

    public static class StructAsymBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "struct_asym";

        public StructAsymBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterPdbxModified() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_modified", this);
        }

        public StrColumnBuilder enterPdbxBlankPDBChainidFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_blank_PDB_chainid_flag", this);
        }

        public StrColumnBuilder enterPdbxPDBId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_PDB_id", this);
        }

        public StrColumnBuilder enterPdbxAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_alt_id", this);
        }

        public StrColumnBuilder enterPdbxType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_type", this);
        }

        public IntColumnBuilder enterPdbxOrder() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_order", this);
        }

        public StrColumnBuilder enterPdbxFractionPerAsymUnit() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_fraction_per_asym_unit", this);
        }

        public IntColumnBuilder enterPdbxMissingNumBeginOfChainNotInSeqres() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_missing_num_begin_of_chain_not_in_seqres", this);
        }

        public IntColumnBuilder enterPdbxMissingNumEndOfChainNotInSeqres() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_missing_num_end_of_chain_not_in_seqres", this);
        }

        public IntColumnBuilder enterPdbxMissingNumBeginOfChainInSeqres() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_missing_num_begin_of_chain_in_seqres", this);
        }

    }

    public static class StructBiolBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "struct_biol";

        public StructBiolBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterPdbxParentBiolId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_parent_biol_id", this);
        }

        public FloatColumnBuilder enterPdbxFormulaWeight() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_formula_weight", this);
        }

        public StrColumnBuilder enterPdbxFormulaWeightMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_formula_weight_method", this);
        }

        public StrColumnBuilder enterPdbxAggregationState() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_aggregation_state", this);
        }

        public StrColumnBuilder enterPdbxAssemblyMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_assembly_method", this);
        }

    }

    public static class StructBiolGenBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "struct_biol_gen";

        public StructBiolGenBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "asym_id", this);
        }

        public StrColumnBuilder enterBiolId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "biol_id", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterSymmetry() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "symmetry", this);
        }

        public StrColumnBuilder enterPdbxFullSymmetryOperation() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_full_symmetry_operation", this);
        }

        public IntColumnBuilder enterPdbxPDBOrder() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_PDB_order", this);
        }

        public StrColumnBuilder enterPdbxNewAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_new_asym_id", this);
        }

        public StrColumnBuilder enterPdbxNewPdbAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_new_pdb_asym_id", this);
        }

        public FloatColumnBuilder enterPdbxColorRed() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_color_red", this);
        }

        public FloatColumnBuilder enterPdbxColorGreen() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_color_green", this);
        }

        public FloatColumnBuilder enterPdbxColorBlue() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_color_blue", this);
        }

        public StrColumnBuilder enterPdbxAfterBeginResidueNo() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_after_begin_residue_no", this);
        }

        public StrColumnBuilder enterPdbxAfterEndResidueNo() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_after_end_residue_no", this);
        }

        public StrColumnBuilder enterPdbxBeforeBeginResidueNo() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_before_begin_residue_no", this);
        }

        public StrColumnBuilder enterPdbxBeforeEndResidueNo() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_before_end_residue_no", this);
        }

    }

    public static class StructBiolKeywordsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "struct_biol_keywords";

        public StructBiolKeywordsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterBiolId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "biol_id", this);
        }

        public StrColumnBuilder enterText() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "text", this);
        }

    }

    public static class StructBiolViewBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "struct_biol_view";

        public StructBiolViewBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterBiolId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "biol_id", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public FloatColumnBuilder enterRotMatrix11() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rot_matrix[1][1]", this);
        }

        public FloatColumnBuilder enterRotMatrix12() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rot_matrix[1][2]", this);
        }

        public FloatColumnBuilder enterRotMatrix13() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rot_matrix[1][3]", this);
        }

        public FloatColumnBuilder enterRotMatrix21() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rot_matrix[2][1]", this);
        }

        public FloatColumnBuilder enterRotMatrix22() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rot_matrix[2][2]", this);
        }

        public FloatColumnBuilder enterRotMatrix23() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rot_matrix[2][3]", this);
        }

        public FloatColumnBuilder enterRotMatrix31() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rot_matrix[3][1]", this);
        }

        public FloatColumnBuilder enterRotMatrix32() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rot_matrix[3][2]", this);
        }

        public FloatColumnBuilder enterRotMatrix33() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rot_matrix[3][3]", this);
        }

        public FloatColumnBuilder enterPdbxVector1() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_vector[1]", this);
        }

        public FloatColumnBuilder enterPdbxVector2() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_vector[2]", this);
        }

        public FloatColumnBuilder enterPdbxVector3() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_vector[3]", this);
        }

    }

    public static class StructConfBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "struct_conf";

        public StructConfBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterBegLabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "beg_label_asym_id", this);
        }

        public StrColumnBuilder enterBegLabelCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "beg_label_comp_id", this);
        }

        public IntColumnBuilder enterBegLabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "beg_label_seq_id", this);
        }

        public StrColumnBuilder enterBegAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "beg_auth_asym_id", this);
        }

        public StrColumnBuilder enterBegAuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "beg_auth_comp_id", this);
        }

        public IntColumnBuilder enterBegAuthSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "beg_auth_seq_id", this);
        }

        public StrColumnBuilder enterConfTypeId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "conf_type_id", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterEndLabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "end_label_asym_id", this);
        }

        public StrColumnBuilder enterEndLabelCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "end_label_comp_id", this);
        }

        public IntColumnBuilder enterEndLabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "end_label_seq_id", this);
        }

        public StrColumnBuilder enterEndAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "end_auth_asym_id", this);
        }

        public StrColumnBuilder enterEndAuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "end_auth_comp_id", this);
        }

        public IntColumnBuilder enterEndAuthSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "end_auth_seq_id", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterPdbxBegPDBInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_beg_PDB_ins_code", this);
        }

        public StrColumnBuilder enterPdbxEndPDBInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_end_PDB_ins_code", this);
        }

        public StrColumnBuilder enterPdbxPDBHelixClass() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_PDB_helix_class", this);
        }

        public IntColumnBuilder enterPdbxPDBHelixLength() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_PDB_helix_length", this);
        }

        public StrColumnBuilder enterPdbxPDBHelixId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_PDB_helix_id", this);
        }

    }

    public static class StructConfTypeBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "struct_conf_type";

        public StructConfTypeBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterCriteria() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "criteria", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterReference() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "reference", this);
        }

    }

    public static class StructConnBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "struct_conn";

        public StructConnBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterConnTypeId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "conn_type_id", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterPtnr1LabelAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr1_label_alt_id", this);
        }

        public StrColumnBuilder enterPtnr1LabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr1_label_asym_id", this);
        }

        public StrColumnBuilder enterPtnr1LabelAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr1_label_atom_id", this);
        }

        public StrColumnBuilder enterPtnr1LabelCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr1_label_comp_id", this);
        }

        public IntColumnBuilder enterPtnr1LabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ptnr1_label_seq_id", this);
        }

        public StrColumnBuilder enterPtnr1AuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr1_auth_asym_id", this);
        }

        public StrColumnBuilder enterPtnr1AuthAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr1_auth_atom_id", this);
        }

        public StrColumnBuilder enterPtnr1AuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr1_auth_comp_id", this);
        }

        public IntColumnBuilder enterPtnr1AuthSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ptnr1_auth_seq_id", this);
        }

        public StrColumnBuilder enterPtnr1Role() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr1_role", this);
        }

        public StrColumnBuilder enterPtnr1Symmetry() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr1_symmetry", this);
        }

        public StrColumnBuilder enterPtnr2LabelAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr2_label_alt_id", this);
        }

        public StrColumnBuilder enterPtnr2LabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr2_label_asym_id", this);
        }

        public StrColumnBuilder enterPtnr2LabelAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr2_label_atom_id", this);
        }

        public StrColumnBuilder enterPtnr2LabelCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr2_label_comp_id", this);
        }

        public IntColumnBuilder enterPtnr2LabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ptnr2_label_seq_id", this);
        }

        public StrColumnBuilder enterPtnr2AuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr2_auth_asym_id", this);
        }

        public StrColumnBuilder enterPtnr2AuthAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr2_auth_atom_id", this);
        }

        public StrColumnBuilder enterPtnr2AuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr2_auth_comp_id", this);
        }

        public IntColumnBuilder enterPtnr2AuthSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ptnr2_auth_seq_id", this);
        }

        public StrColumnBuilder enterPtnr2Role() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr2_role", this);
        }

        public StrColumnBuilder enterPtnr2Symmetry() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr2_symmetry", this);
        }

        public StrColumnBuilder enterPdbxPtnr1PDBInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_ptnr1_PDB_ins_code", this);
        }

        public StrColumnBuilder enterPdbxPtnr1AuthAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_ptnr1_auth_alt_id", this);
        }

        public StrColumnBuilder enterPdbxPtnr1LabelAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_ptnr1_label_alt_id", this);
        }

        public StrColumnBuilder enterPdbxPtnr1StandardCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_ptnr1_standard_comp_id", this);
        }

        public StrColumnBuilder enterPdbxPtnr2PDBInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_ptnr2_PDB_ins_code", this);
        }

        public StrColumnBuilder enterPdbxPtnr2AuthAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_ptnr2_auth_alt_id", this);
        }

        public StrColumnBuilder enterPdbxPtnr2LabelAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_ptnr2_label_alt_id", this);
        }

        public StrColumnBuilder enterPdbxPtnr3AuthAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_ptnr3_auth_alt_id", this);
        }

        public StrColumnBuilder enterPdbxPtnr3AuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_ptnr3_auth_asym_id", this);
        }

        public StrColumnBuilder enterPdbxPtnr3AuthAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_ptnr3_auth_atom_id", this);
        }

        public StrColumnBuilder enterPdbxPtnr3AuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_ptnr3_auth_comp_id", this);
        }

        public StrColumnBuilder enterPdbxPtnr3PDBInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_ptnr3_PDB_ins_code", this);
        }

        public StrColumnBuilder enterPdbxPtnr3AuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_ptnr3_auth_seq_id", this);
        }

        public StrColumnBuilder enterPdbxPtnr3LabelAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_ptnr3_label_alt_id", this);
        }

        public StrColumnBuilder enterPdbxPtnr3LabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_ptnr3_label_asym_id", this);
        }

        public StrColumnBuilder enterPdbxPtnr3LabelAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_ptnr3_label_atom_id", this);
        }

        public StrColumnBuilder enterPdbxPtnr3LabelCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_ptnr3_label_comp_id", this);
        }

        public IntColumnBuilder enterPdbxPtnr3LabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_ptnr3_label_seq_id", this);
        }

        public StrColumnBuilder enterPdbxPDBId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_PDB_id", this);
        }

        public FloatColumnBuilder enterPdbxDistValue() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_dist_value", this);
        }

        public StrColumnBuilder enterPdbxValueOrder() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_value_order", this);
        }

        public StrColumnBuilder enterPdbxLeavingAtomFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_leaving_atom_flag", this);
        }

        public StrColumnBuilder enterPdbxPtnr1ModName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_ptnr1_mod_name", this);
        }

        public StrColumnBuilder enterPdbxPtnr1SugarName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_ptnr1_sugar_name", this);
        }

        public StrColumnBuilder enterPdbxPtnr1ReplacedAtom() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_ptnr1_replaced_atom", this);
        }

        public StrColumnBuilder enterPdbxPtnr3AuthInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_ptnr3_auth_ins_code", this);
        }

        public StrColumnBuilder enterPdbxPtnr1AtomStereoConfig() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_ptnr1_atom_stereo_config", this);
        }

        public StrColumnBuilder enterPdbxPtnr1LeavingAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_ptnr1_leaving_atom_id", this);
        }

        public StrColumnBuilder enterPdbxPtnr2AtomStereoConfig() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_ptnr2_atom_stereo_config", this);
        }

        public StrColumnBuilder enterPdbxPtnr2LeavingAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_ptnr2_leaving_atom_id", this);
        }

        public StrColumnBuilder enterPdbxRole() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_role", this);
        }

    }

    public static class StructConnTypeBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "struct_conn_type";

        public StructConnTypeBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterCriteria() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "criteria", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterReference() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "reference", this);
        }

    }

    public static class StructKeywordsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "struct_keywords";

        public StructKeywordsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterText() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "text", this);
        }

        public StrColumnBuilder enterPdbxKeywords() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_keywords", this);
        }

        public StrColumnBuilder enterPdbxDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_details", this);
        }

    }

    public static class StructMonDetailsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "struct_mon_details";

        public StructMonDetailsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public FloatColumnBuilder enterProtCis() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "prot_cis", this);
        }

        public StrColumnBuilder enterRSCC() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "RSCC", this);
        }

        public StrColumnBuilder enterRSR() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "RSR", this);
        }

    }

    public static class StructMonNuclBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "struct_mon_nucl";

        public StructMonNuclBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public FloatColumnBuilder enterAlpha() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "alpha", this);
        }

        public StrColumnBuilder enterAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id", this);
        }

        public StrColumnBuilder enterAuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_comp_id", this);
        }

        public StrColumnBuilder enterAuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id", this);
        }

        public FloatColumnBuilder enterBeta() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "beta", this);
        }

        public FloatColumnBuilder enterChi1() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "chi1", this);
        }

        public FloatColumnBuilder enterChi2() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "chi2", this);
        }

        public FloatColumnBuilder enterDelta() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "delta", this);
        }

        public FloatColumnBuilder enterDetails() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public FloatColumnBuilder enterEpsilon() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "epsilon", this);
        }

        public FloatColumnBuilder enterGamma() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "gamma", this);
        }

        public StrColumnBuilder enterLabelAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_alt_id", this);
        }

        public StrColumnBuilder enterLabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_asym_id", this);
        }

        public StrColumnBuilder enterLabelCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_comp_id", this);
        }

        public IntColumnBuilder enterLabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "label_seq_id", this);
        }

        public FloatColumnBuilder enterMeanBAll() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "mean_B_all", this);
        }

        public FloatColumnBuilder enterMeanBBase() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "mean_B_base", this);
        }

        public FloatColumnBuilder enterMeanBPhos() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "mean_B_phos", this);
        }

        public FloatColumnBuilder enterMeanBSugar() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "mean_B_sugar", this);
        }

        public FloatColumnBuilder enterNu0() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "nu0", this);
        }

        public FloatColumnBuilder enterNu1() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "nu1", this);
        }

        public FloatColumnBuilder enterNu2() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "nu2", this);
        }

        public FloatColumnBuilder enterNu3() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "nu3", this);
        }

        public FloatColumnBuilder enterNu4() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "nu4", this);
        }

        public FloatColumnBuilder enterP() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "P", this);
        }

        public FloatColumnBuilder enterRSCCAll() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "RSCC_all", this);
        }

        public FloatColumnBuilder enterRSCCBase() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "RSCC_base", this);
        }

        public FloatColumnBuilder enterRSCCPhos() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "RSCC_phos", this);
        }

        public FloatColumnBuilder enterRSCCSugar() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "RSCC_sugar", this);
        }

        public FloatColumnBuilder enterRSRAll() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "RSR_all", this);
        }

        public FloatColumnBuilder enterRSRBase() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "RSR_base", this);
        }

        public FloatColumnBuilder enterRSRPhos() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "RSR_phos", this);
        }

        public FloatColumnBuilder enterRSRSugar() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "RSR_sugar", this);
        }

        public FloatColumnBuilder enterTau0() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "tau0", this);
        }

        public FloatColumnBuilder enterTau1() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "tau1", this);
        }

        public FloatColumnBuilder enterTau2() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "tau2", this);
        }

        public FloatColumnBuilder enterTau3() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "tau3", this);
        }

        public FloatColumnBuilder enterTau4() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "tau4", this);
        }

        public FloatColumnBuilder enterTaum() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "taum", this);
        }

        public FloatColumnBuilder enterZeta() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "zeta", this);
        }

    }

    public static class StructMonProtBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "struct_mon_prot";

        public StructMonProtBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public FloatColumnBuilder enterChi1() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "chi1", this);
        }

        public FloatColumnBuilder enterChi2() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "chi2", this);
        }

        public FloatColumnBuilder enterChi3() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "chi3", this);
        }

        public FloatColumnBuilder enterChi4() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "chi4", this);
        }

        public FloatColumnBuilder enterChi5() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "chi5", this);
        }

        public FloatColumnBuilder enterDetails() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterLabelAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_alt_id", this);
        }

        public StrColumnBuilder enterLabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_asym_id", this);
        }

        public StrColumnBuilder enterLabelCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_comp_id", this);
        }

        public IntColumnBuilder enterLabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "label_seq_id", this);
        }

        public StrColumnBuilder enterAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id", this);
        }

        public StrColumnBuilder enterAuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_comp_id", this);
        }

        public StrColumnBuilder enterAuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id", this);
        }

        public FloatColumnBuilder enterRSCCAll() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "RSCC_all", this);
        }

        public FloatColumnBuilder enterRSCCMain() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "RSCC_main", this);
        }

        public FloatColumnBuilder enterRSCCSide() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "RSCC_side", this);
        }

        public FloatColumnBuilder enterRSRAll() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "RSR_all", this);
        }

        public FloatColumnBuilder enterRSRMain() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "RSR_main", this);
        }

        public FloatColumnBuilder enterRSRSide() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "RSR_side", this);
        }

        public FloatColumnBuilder enterMeanBAll() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "mean_B_all", this);
        }

        public FloatColumnBuilder enterMeanBMain() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "mean_B_main", this);
        }

        public FloatColumnBuilder enterMeanBSide() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "mean_B_side", this);
        }

        public FloatColumnBuilder enterOmega() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "omega", this);
        }

        public FloatColumnBuilder enterPhi() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "phi", this);
        }

        public FloatColumnBuilder enterPsi() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "psi", this);
        }

    }

    public static class StructMonProtCisBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "struct_mon_prot_cis";

        public StructMonProtCisBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterLabelAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_alt_id", this);
        }

        public StrColumnBuilder enterLabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_asym_id", this);
        }

        public StrColumnBuilder enterLabelCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_comp_id", this);
        }

        public IntColumnBuilder enterLabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "label_seq_id", this);
        }

        public StrColumnBuilder enterAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id", this);
        }

        public StrColumnBuilder enterAuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_comp_id", this);
        }

        public StrColumnBuilder enterAuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id", this);
        }

        public StrColumnBuilder enterPdbxAuthAsymId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_auth_asym_id_2", this);
        }

        public StrColumnBuilder enterPdbxAuthCompId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_auth_comp_id_2", this);
        }

        public StrColumnBuilder enterPdbxAuthSeqId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_auth_seq_id_2", this);
        }

        public StrColumnBuilder enterPdbxLabelAsymId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_label_asym_id_2", this);
        }

        public StrColumnBuilder enterPdbxLabelCompId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_label_comp_id_2", this);
        }

        public IntColumnBuilder enterPdbxLabelSeqId2() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_label_seq_id_2", this);
        }

        public StrColumnBuilder enterPdbxPDBInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_PDB_ins_code", this);
        }

        public StrColumnBuilder enterPdbxPDBInsCode2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_PDB_ins_code_2", this);
        }

        public IntColumnBuilder enterPdbxPDBModelNum() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_PDB_model_num", this);
        }

        public StrColumnBuilder enterPdbxOmegaAngle() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_omega_angle", this);
        }

        public StrColumnBuilder enterPdbxId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_id", this);
        }

        public StrColumnBuilder enterPdbxAuthInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_auth_ins_code", this);
        }

        public StrColumnBuilder enterPdbxAuthInsCode2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_auth_ins_code_2", this);
        }

    }

    public static class StructNcsDomBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "struct_ncs_dom";

        public StructNcsDomBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterPdbxEnsId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_ens_id", this);
        }

    }

    public static class StructNcsDomLimBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "struct_ncs_dom_lim";

        public StructNcsDomLimBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterBegLabelAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "beg_label_alt_id", this);
        }

        public StrColumnBuilder enterBegLabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "beg_label_asym_id", this);
        }

        public StrColumnBuilder enterBegLabelCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "beg_label_comp_id", this);
        }

        public IntColumnBuilder enterBegLabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "beg_label_seq_id", this);
        }

        public StrColumnBuilder enterBegAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "beg_auth_asym_id", this);
        }

        public StrColumnBuilder enterBegAuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "beg_auth_comp_id", this);
        }

        public StrColumnBuilder enterBegAuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "beg_auth_seq_id", this);
        }

        public StrColumnBuilder enterDomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "dom_id", this);
        }

        public StrColumnBuilder enterEndLabelAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "end_label_alt_id", this);
        }

        public StrColumnBuilder enterEndLabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "end_label_asym_id", this);
        }

        public StrColumnBuilder enterEndLabelCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "end_label_comp_id", this);
        }

        public IntColumnBuilder enterEndLabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "end_label_seq_id", this);
        }

        public StrColumnBuilder enterEndAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "end_auth_asym_id", this);
        }

        public StrColumnBuilder enterEndAuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "end_auth_comp_id", this);
        }

        public StrColumnBuilder enterEndAuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "end_auth_seq_id", this);
        }

        public StrColumnBuilder enterSelectionDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "selection_details", this);
        }

        public IntColumnBuilder enterPdbxComponentId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_component_id", this);
        }

        public FloatColumnBuilder enterPdbxRefineCode() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_refine_code", this);
        }

        public StrColumnBuilder enterPdbxEnsId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_ens_id", this);
        }

    }

    public static class StructNcsEnsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "struct_ncs_ens";

        public StructNcsEnsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterPointGroup() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "point_group", this);
        }

    }

    public static class StructNcsEnsGenBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "struct_ncs_ens_gen";

        public StructNcsEnsGenBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDomId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "dom_id_1", this);
        }

        public StrColumnBuilder enterDomId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "dom_id_2", this);
        }

        public StrColumnBuilder enterEnsId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ens_id", this);
        }

        public IntColumnBuilder enterOperId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "oper_id", this);
        }

    }

    public static class StructNcsOperBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "struct_ncs_oper";

        public StructNcsOperBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "code", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public FloatColumnBuilder enterMatrix11() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "matrix[1][1]", this);
        }

        public FloatColumnBuilder enterMatrix12() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "matrix[1][2]", this);
        }

        public FloatColumnBuilder enterMatrix13() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "matrix[1][3]", this);
        }

        public FloatColumnBuilder enterMatrix21() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "matrix[2][1]", this);
        }

        public FloatColumnBuilder enterMatrix22() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "matrix[2][2]", this);
        }

        public FloatColumnBuilder enterMatrix23() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "matrix[2][3]", this);
        }

        public FloatColumnBuilder enterMatrix31() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "matrix[3][1]", this);
        }

        public FloatColumnBuilder enterMatrix32() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "matrix[3][2]", this);
        }

        public FloatColumnBuilder enterMatrix33() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "matrix[3][3]", this);
        }

        public FloatColumnBuilder enterVector1() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "vector[1]", this);
        }

        public FloatColumnBuilder enterVector2() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "vector[2]", this);
        }

        public FloatColumnBuilder enterVector3() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "vector[3]", this);
        }

    }

    public static class StructRefBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "struct_ref";

        public StructRefBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterBiolId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "biol_id", this);
        }

        public StrColumnBuilder enterDbCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "db_code", this);
        }

        public StrColumnBuilder enterDbName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "db_name", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterSeqAlign() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "seq_align", this);
        }

        public StrColumnBuilder enterSeqDif() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "seq_dif", this);
        }

        public StrColumnBuilder enterPdbxDbAccession() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_db_accession", this);
        }

        public StrColumnBuilder enterPdbxDbIsoform() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_db_isoform", this);
        }

        public StrColumnBuilder enterPdbxSeqOneLetterCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_seq_one_letter_code", this);
        }

        public StrColumnBuilder enterPdbxAlignBegin() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_align_begin", this);
        }

        public StrColumnBuilder enterPdbxAlignEnd() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_align_end", this);
        }

    }

    public static class StructRefSeqBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "struct_ref_seq";

        public StructRefSeqBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterAlignId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "align_id", this);
        }

        public IntColumnBuilder enterDbAlignBeg() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "db_align_beg", this);
        }

        public IntColumnBuilder enterDbAlignEnd() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "db_align_end", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterRefId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ref_id", this);
        }

        public IntColumnBuilder enterSeqAlignBeg() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "seq_align_beg", this);
        }

        public IntColumnBuilder enterSeqAlignEnd() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "seq_align_end", this);
        }

        public StrColumnBuilder enterPdbxStrandId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_strand_id", this);
        }

        public StrColumnBuilder enterPdbxDbAccession() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_db_accession", this);
        }

        public StrColumnBuilder enterPdbxDbAlignBegInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_db_align_beg_ins_code", this);
        }

        public StrColumnBuilder enterPdbxDbAlignEndInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_db_align_end_ins_code", this);
        }

        public StrColumnBuilder enterPdbxPDBIdCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_PDB_id_code", this);
        }

        public StrColumnBuilder enterPdbxAuthSeqAlignBeg() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_auth_seq_align_beg", this);
        }

        public StrColumnBuilder enterPdbxAuthSeqAlignEnd() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_auth_seq_align_end", this);
        }

        public StrColumnBuilder enterPdbxSeqAlignBegInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_seq_align_beg_ins_code", this);
        }

        public StrColumnBuilder enterPdbxSeqAlignEndInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_seq_align_end_ins_code", this);
        }

    }

    public static class StructRefSeqDifBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "struct_ref_seq_dif";

        public StructRefSeqDifBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterAlignId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "align_id", this);
        }

        public StrColumnBuilder enterDbMonId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "db_mon_id", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterMonId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "mon_id", this);
        }

        public IntColumnBuilder enterSeqNum() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "seq_num", this);
        }

        public StrColumnBuilder enterPdbxPdbIdCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_pdb_id_code", this);
        }

        public StrColumnBuilder enterPdbxPdbStrandId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_pdb_strand_id", this);
        }

        public StrColumnBuilder enterPdbxPdbInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_pdb_ins_code", this);
        }

        public StrColumnBuilder enterPdbxAuthSeqNum() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_auth_seq_num", this);
        }

        public StrColumnBuilder enterPdbxSeqDbName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_seq_db_name", this);
        }

        public StrColumnBuilder enterPdbxSeqDbAccessionCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_seq_db_accession_code", this);
        }

        public StrColumnBuilder enterPdbxSeqDbSeqNum() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_seq_db_seq_num", this);
        }

        public IntColumnBuilder enterPdbxOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_ordinal", this);
        }

    }

    public static class StructSheetBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "struct_sheet";

        public StructSheetBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterNumberStrands() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number_strands", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

    }

    public static class StructSheetHbondBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "struct_sheet_hbond";

        public StructSheetHbondBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterRange1BegLabelAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "range_1_beg_label_atom_id", this);
        }

        public IntColumnBuilder enterRange1BegLabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "range_1_beg_label_seq_id", this);
        }

        public StrColumnBuilder enterRange1EndLabelAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "range_1_end_label_atom_id", this);
        }

        public IntColumnBuilder enterRange1EndLabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "range_1_end_label_seq_id", this);
        }

        public StrColumnBuilder enterRange2BegLabelAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "range_2_beg_label_atom_id", this);
        }

        public IntColumnBuilder enterRange2BegLabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "range_2_beg_label_seq_id", this);
        }

        public StrColumnBuilder enterRange2EndLabelAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "range_2_end_label_atom_id", this);
        }

        public IntColumnBuilder enterRange2EndLabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "range_2_end_label_seq_id", this);
        }

        public StrColumnBuilder enterRange1BegAuthAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "range_1_beg_auth_atom_id", this);
        }

        public StrColumnBuilder enterRange1BegAuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "range_1_beg_auth_seq_id", this);
        }

        public StrColumnBuilder enterRange1EndAuthAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "range_1_end_auth_atom_id", this);
        }

        public StrColumnBuilder enterRange1EndAuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "range_1_end_auth_seq_id", this);
        }

        public StrColumnBuilder enterRange2BegAuthAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "range_2_beg_auth_atom_id", this);
        }

        public StrColumnBuilder enterRange2BegAuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "range_2_beg_auth_seq_id", this);
        }

        public StrColumnBuilder enterRange2EndAuthAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "range_2_end_auth_atom_id", this);
        }

        public StrColumnBuilder enterRange2EndAuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "range_2_end_auth_seq_id", this);
        }

        public StrColumnBuilder enterRangeId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "range_id_1", this);
        }

        public StrColumnBuilder enterRangeId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "range_id_2", this);
        }

        public StrColumnBuilder enterSheetId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "sheet_id", this);
        }

        public StrColumnBuilder enterPdbxRange1BegAuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_range_1_beg_auth_comp_id", this);
        }

        public StrColumnBuilder enterPdbxRange1BegAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_range_1_beg_auth_asym_id", this);
        }

        public StrColumnBuilder enterPdbxRange1EndAuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_range_1_end_auth_comp_id", this);
        }

        public StrColumnBuilder enterPdbxRange1EndAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_range_1_end_auth_asym_id", this);
        }

        public StrColumnBuilder enterPdbxRange1BegLabelCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_range_1_beg_label_comp_id", this);
        }

        public StrColumnBuilder enterPdbxRange1BegLabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_range_1_beg_label_asym_id", this);
        }

        public StrColumnBuilder enterPdbxRange1BegPDBInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_range_1_beg_PDB_ins_code", this);
        }

        public StrColumnBuilder enterPdbxRange1EndLabelCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_range_1_end_label_comp_id", this);
        }

        public StrColumnBuilder enterPdbxRange1EndLabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_range_1_end_label_asym_id", this);
        }

        public StrColumnBuilder enterPdbxRange1EndPDBInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_range_1_end_PDB_ins_code", this);
        }

        public StrColumnBuilder enterPdbxRange2BegLabelCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_range_2_beg_label_comp_id", this);
        }

        public StrColumnBuilder enterPdbxRange2BegLabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_range_2_beg_label_asym_id", this);
        }

        public StrColumnBuilder enterPdbxRange2BegPDBInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_range_2_beg_PDB_ins_code", this);
        }

        public StrColumnBuilder enterPdbxRange2EndLabelCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_range_2_end_label_comp_id", this);
        }

        public StrColumnBuilder enterPdbxRange2EndLabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_range_2_end_label_asym_id", this);
        }

        public StrColumnBuilder enterPdbxRange2EndLabelInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_range_2_end_label_ins_code", this);
        }

    }

    public static class StructSheetOrderBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "struct_sheet_order";

        public StructSheetOrderBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterOffset() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "offset", this);
        }

        public StrColumnBuilder enterRangeId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "range_id_1", this);
        }

        public StrColumnBuilder enterRangeId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "range_id_2", this);
        }

        public StrColumnBuilder enterSense() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "sense", this);
        }

        public StrColumnBuilder enterSheetId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "sheet_id", this);
        }

    }

    public static class StructSheetRangeBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "struct_sheet_range";

        public StructSheetRangeBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterBegLabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "beg_label_asym_id", this);
        }

        public StrColumnBuilder enterBegLabelCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "beg_label_comp_id", this);
        }

        public IntColumnBuilder enterBegLabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "beg_label_seq_id", this);
        }

        public StrColumnBuilder enterEndLabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "end_label_asym_id", this);
        }

        public StrColumnBuilder enterEndLabelCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "end_label_comp_id", this);
        }

        public IntColumnBuilder enterEndLabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "end_label_seq_id", this);
        }

        public StrColumnBuilder enterBegAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "beg_auth_asym_id", this);
        }

        public StrColumnBuilder enterBegAuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "beg_auth_comp_id", this);
        }

        public IntColumnBuilder enterBegAuthSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "beg_auth_seq_id", this);
        }

        public StrColumnBuilder enterEndAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "end_auth_asym_id", this);
        }

        public StrColumnBuilder enterEndAuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "end_auth_comp_id", this);
        }

        public IntColumnBuilder enterEndAuthSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "end_auth_seq_id", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterSheetId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "sheet_id", this);
        }

        public StrColumnBuilder enterSymmetry() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "symmetry", this);
        }

        public StrColumnBuilder enterPdbxBegPDBInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_beg_PDB_ins_code", this);
        }

        public StrColumnBuilder enterPdbxEndPDBInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_end_PDB_ins_code", this);
        }

    }

    public static class StructSheetTopologyBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "struct_sheet_topology";

        public StructSheetTopologyBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterOffset() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "offset", this);
        }

        public StrColumnBuilder enterRangeId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "range_id_1", this);
        }

        public StrColumnBuilder enterRangeId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "range_id_2", this);
        }

        public StrColumnBuilder enterSense() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "sense", this);
        }

        public StrColumnBuilder enterSheetId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "sheet_id", this);
        }

    }

    public static class StructSiteBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "struct_site";

        public StructSiteBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterPdbxNumResidues() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_num_residues", this);
        }

        public StrColumnBuilder enterPdbxEvidenceCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_evidence_code", this);
        }

        public StrColumnBuilder enterPdbxAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_auth_asym_id", this);
        }

        public StrColumnBuilder enterPdbxAuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_auth_comp_id", this);
        }

        public StrColumnBuilder enterPdbxAuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_auth_seq_id", this);
        }

        public StrColumnBuilder enterPdbxAuthInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_auth_ins_code", this);
        }

    }

    public static class StructSiteGenBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "struct_site_gen";

        public StructSiteGenBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterLabelAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_alt_id", this);
        }

        public StrColumnBuilder enterLabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_asym_id", this);
        }

        public StrColumnBuilder enterLabelAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_atom_id", this);
        }

        public StrColumnBuilder enterLabelCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_comp_id", this);
        }

        public IntColumnBuilder enterLabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "label_seq_id", this);
        }

        public StrColumnBuilder enterAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id", this);
        }

        public StrColumnBuilder enterAuthAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_atom_id", this);
        }

        public StrColumnBuilder enterAuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_comp_id", this);
        }

        public StrColumnBuilder enterAuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id", this);
        }

        public StrColumnBuilder enterSiteId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "site_id", this);
        }

        public StrColumnBuilder enterSymmetry() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "symmetry", this);
        }

        public StrColumnBuilder enterPdbxAuthInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_auth_ins_code", this);
        }

        public IntColumnBuilder enterPdbxNumRes() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_num_res", this);
        }

    }

    public static class StructSiteKeywordsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "struct_site_keywords";

        public StructSiteKeywordsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterSiteId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "site_id", this);
        }

        public StrColumnBuilder enterText() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "text", this);
        }

    }

    public static class StructSiteViewBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "struct_site_view";

        public StructSiteViewBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public FloatColumnBuilder enterRotMatrix11() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rot_matrix[1][1]", this);
        }

        public FloatColumnBuilder enterRotMatrix12() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rot_matrix[1][2]", this);
        }

        public FloatColumnBuilder enterRotMatrix13() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rot_matrix[1][3]", this);
        }

        public FloatColumnBuilder enterRotMatrix21() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rot_matrix[2][1]", this);
        }

        public FloatColumnBuilder enterRotMatrix22() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rot_matrix[2][2]", this);
        }

        public FloatColumnBuilder enterRotMatrix23() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rot_matrix[2][3]", this);
        }

        public FloatColumnBuilder enterRotMatrix31() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rot_matrix[3][1]", this);
        }

        public FloatColumnBuilder enterRotMatrix32() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rot_matrix[3][2]", this);
        }

        public FloatColumnBuilder enterRotMatrix33() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rot_matrix[3][3]", this);
        }

        public StrColumnBuilder enterSiteId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "site_id", this);
        }

    }

    public static class SymmetryBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "symmetry";

        public SymmetryBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterCellSetting() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "cell_setting", this);
        }

        public IntColumnBuilder enterIntTablesNumber() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "Int_Tables_number", this);
        }

        public StrColumnBuilder enterSpaceGroupNameHall() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "space_group_name_Hall", this);
        }

        public StrColumnBuilder enterSpaceGroupNameH_M() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "space_group_name_H-M", this);
        }

        public StrColumnBuilder enterPdbxFullSpaceGroupNameH_M() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_full_space_group_name_H-M", this);
        }

    }

    public static class SymmetryEquivBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "symmetry_equiv";

        public SymmetryEquivBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterPosAsXyz() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pos_as_xyz", this);
        }

    }

    public static class AuditLinkBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "audit_link";

        public AuditLinkBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterBlockCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "block_code", this);
        }

        public StrColumnBuilder enterBlockDescription() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "block_description", this);
        }

    }

    public static class DiffrnReflnsClassBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "diffrn_reflns_class";

        public DiffrnReflnsClassBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public FloatColumnBuilder enterAvREq() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "av_R_eq", this);
        }

        public FloatColumnBuilder enterAvSgI_I() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "av_sgI/I", this);
        }

        public FloatColumnBuilder enterAvUI_I() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "av_uI/I", this);
        }

        public StrColumnBuilder enterCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "code", this);
        }

        public StrColumnBuilder enterDescription() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "description", this);
        }

        public FloatColumnBuilder enterDResHigh() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "d_res_high", this);
        }

        public FloatColumnBuilder enterDResLow() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "d_res_low", this);
        }

        public IntColumnBuilder enterNumber() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number", this);
        }

    }

    public static class RefineLsClassBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "refine_ls_class";

        public RefineLsClassBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "code", this);
        }

        public FloatColumnBuilder enterDResHigh() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "d_res_high", this);
        }

        public FloatColumnBuilder enterDResLow() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "d_res_low", this);
        }

        public FloatColumnBuilder enterRFactorGt() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "R_factor_gt", this);
        }

        public FloatColumnBuilder enterRFactorAll() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "R_factor_all", this);
        }

        public FloatColumnBuilder enterRFsqdFactor() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "R_Fsqd_factor", this);
        }

        public FloatColumnBuilder enterRIFactor() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "R_I_factor", this);
        }

        public FloatColumnBuilder enterWRFactorAll() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "wR_factor_all", this);
        }

    }

    public static class ReflnsClassBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "reflns_class";

        public ReflnsClassBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "code", this);
        }

        public StrColumnBuilder enterDescription() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "description", this);
        }

        public FloatColumnBuilder enterDResHigh() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "d_res_high", this);
        }

        public FloatColumnBuilder enterDResLow() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "d_res_low", this);
        }

        public IntColumnBuilder enterNumberGt() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number_gt", this);
        }

        public IntColumnBuilder enterNumberTotal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number_total", this);
        }

        public FloatColumnBuilder enterRFactorAll() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "R_factor_all", this);
        }

        public FloatColumnBuilder enterRFactorGt() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "R_factor_gt", this);
        }

        public FloatColumnBuilder enterRFsqdFactor() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "R_Fsqd_factor", this);
        }

        public FloatColumnBuilder enterRIFactor() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "R_I_factor", this);
        }

        public FloatColumnBuilder enterWRFactorAll() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "wR_factor_all", this);
        }

    }

    public static class SpaceGroupBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "space_group";

        public SpaceGroupBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterCrystalSystem() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "crystal_system", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterITNumber() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "IT_number", this);
        }

        public StrColumnBuilder enterNameHall() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name_Hall", this);
        }

        public StrColumnBuilder enterNameH_MAlt() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name_H-M_alt", this);
        }

    }

    public static class SpaceGroupSymopBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "space_group_symop";

        public SpaceGroupSymopBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterOperationXyz() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "operation_xyz", this);
        }

        public StrColumnBuilder enterSgId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "sg_id", this);
        }

    }

    public static class ValenceParamBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "valence_param";

        public ValenceParamBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterAtom1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_1", this);
        }

        public IntColumnBuilder enterAtom1Valence() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "atom_1_valence", this);
        }

        public StrColumnBuilder enterAtom2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_2", this);
        }

        public IntColumnBuilder enterAtom2Valence() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "atom_2_valence", this);
        }

        public FloatColumnBuilder enterB() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "B", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterRefId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ref_id", this);
        }

        public FloatColumnBuilder enterRo() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Ro", this);
        }

    }

    public static class ValenceRefBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "valence_ref";

        public ValenceRefBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterReference() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "reference", this);
        }

    }

    public static class PdbxAuditBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_audit";

        public PdbxAuditBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterCurrentVersion() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "current_version", this);
        }

    }

    public static class PdbxVersionBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_version";

        public PdbxVersionBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterRevisionDate() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "revision_date", this);
        }

        public IntColumnBuilder enterMajorVersion() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "major_version", this);
        }

        public StrColumnBuilder enterMinorVersion() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "minor_version", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterRevisionType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "revision_type", this);
        }

    }

    public static class PdbxAuditAuthorBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_audit_author";

        public PdbxAuditAuthorBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterAddress() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "address", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public IntColumnBuilder enterOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal", this);
        }

    }

    public static class PdbxDatabaseMessageBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_database_message";

        public PdbxDatabaseMessageBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterMessageId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "message_id", this);
        }

        public StrColumnBuilder enterDate() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date", this);
        }

        public StrColumnBuilder enterContentType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "content_type", this);
        }

        public StrColumnBuilder enterMessageType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "message_type", this);
        }

        public StrColumnBuilder enterSender() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "sender", this);
        }

        public StrColumnBuilder enterSenderAddressFax() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "sender_address_fax", this);
        }

        public StrColumnBuilder enterSenderAddressPhone() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "sender_address_phone", this);
        }

        public StrColumnBuilder enterSenderAddressEmail() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "sender_address_email", this);
        }

        public StrColumnBuilder enterSenderAddressMail() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "sender_address_mail", this);
        }

        public StrColumnBuilder enterReceiver() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "receiver", this);
        }

        public StrColumnBuilder enterReceiverAddressFax() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "receiver_address_fax", this);
        }

        public StrColumnBuilder enterReceiverAddressPhone() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "receiver_address_phone", this);
        }

        public StrColumnBuilder enterReceiverAddressEmail() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "receiver_address_email", this);
        }

        public StrColumnBuilder enterReceiverAddressMail() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "receiver_address_mail", this);
        }

        public StrColumnBuilder enterMessage() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "message", this);
        }

    }

    public static class PdbxDatabasePDBObsSprBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_database_PDB_obs_spr";

        public PdbxDatabasePDBObsSprBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterDate() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date", this);
        }

        public StrColumnBuilder enterPdbId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdb_id", this);
        }

        public StrColumnBuilder enterReplacePdbId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "replace_pdb_id", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class PdbxDatabaseProcBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_database_proc";

        public PdbxDatabaseProcBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterCycleId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "cycle_id", this);
        }

        public StrColumnBuilder enterDateBeginCycle() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date_begin_cycle", this);
        }

        public StrColumnBuilder enterDateEndCycle() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date_end_cycle", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class PdbxDatabaseRemarkBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_database_remark";

        public PdbxDatabaseRemarkBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterText() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "text", this);
        }

    }

    public static class PdbxDatabaseStatusBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_database_status";

        public PdbxDatabaseStatusBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterStatusCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "status_code", this);
        }

        public StrColumnBuilder enterAuthorReleaseStatusCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "author_release_status_code", this);
        }

        public StrColumnBuilder enterStatusCodeSf() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "status_code_sf", this);
        }

        public StrColumnBuilder enterStatusCodeMr() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "status_code_mr", this);
        }

        public StrColumnBuilder enterDepReleaseCodeCoordinates() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "dep_release_code_coordinates", this);
        }

        public StrColumnBuilder enterDepReleaseCodeSequence() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "dep_release_code_sequence", this);
        }

        public StrColumnBuilder enterDepReleaseCodeStructFact() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "dep_release_code_struct_fact", this);
        }

        public StrColumnBuilder enterDepReleaseCodeNmrConstraints() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "dep_release_code_nmr_constraints", this);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterRecvdDepositForm() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "recvd_deposit_form", this);
        }

        public StrColumnBuilder enterDateDepositionForm() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date_deposition_form", this);
        }

        public StrColumnBuilder enterDateBeginDeposition() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date_begin_deposition", this);
        }

        public StrColumnBuilder enterDateBeginProcessing() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date_begin_processing", this);
        }

        public StrColumnBuilder enterDateEndProcessing() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date_end_processing", this);
        }

        public StrColumnBuilder enterDateBeginReleasePreparation() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date_begin_release_preparation", this);
        }

        public StrColumnBuilder enterDateAuthorReleaseRequest() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date_author_release_request", this);
        }

        public StrColumnBuilder enterRecvdCoordinates() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "recvd_coordinates", this);
        }

        public StrColumnBuilder enterDateCoordinates() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date_coordinates", this);
        }

        public StrColumnBuilder enterRecvdStructFact() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "recvd_struct_fact", this);
        }

        public StrColumnBuilder enterDateStructFact() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date_struct_fact", this);
        }

        public StrColumnBuilder enterRecvdNmrConstraints() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "recvd_nmr_constraints", this);
        }

        public StrColumnBuilder enterDateNmrConstraints() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date_nmr_constraints", this);
        }

        public StrColumnBuilder enterRecvdInternalApproval() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "recvd_internal_approval", this);
        }

        public StrColumnBuilder enterRecvdManuscript() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "recvd_manuscript", this);
        }

        public StrColumnBuilder enterDateManuscript() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date_manuscript", this);
        }

        public StrColumnBuilder enterNameDepositor() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name_depositor", this);
        }

        public StrColumnBuilder enterRecvdAuthorApproval() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "recvd_author_approval", this);
        }

        public StrColumnBuilder enterAuthorApprovalType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "author_approval_type", this);
        }

        public StrColumnBuilder enterDateAuthorApproval() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date_author_approval", this);
        }

        public StrColumnBuilder enterRecvdInitialDepositionDate() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "recvd_initial_deposition_date", this);
        }

        public StrColumnBuilder enterDateSubmitted() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date_submitted", this);
        }

        public StrColumnBuilder enterRcsbAnnotator() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "rcsb_annotator", this);
        }

        public StrColumnBuilder enterDateOfSfRelease() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date_of_sf_release", this);
        }

        public StrColumnBuilder enterDateOfMrRelease() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date_of_mr_release", this);
        }

        public StrColumnBuilder enterDateOfPDBRelease() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date_of_PDB_release", this);
        }

        public StrColumnBuilder enterDateHoldCoordinates() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date_hold_coordinates", this);
        }

        public StrColumnBuilder enterDateHoldStructFact() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date_hold_struct_fact", this);
        }

        public StrColumnBuilder enterDateHoldNmrConstraints() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date_hold_nmr_constraints", this);
        }

        public StrColumnBuilder enterHoldForPublication() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "hold_for_publication", this);
        }

        public StrColumnBuilder enterSGEntry() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "SG_entry", this);
        }

        public StrColumnBuilder enterPdbDateOfAuthorApproval() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdb_date_of_author_approval", this);
        }

        public StrColumnBuilder enterDepositSite() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "deposit_site", this);
        }

        public StrColumnBuilder enterProcessSite() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "process_site", this);
        }

        public StrColumnBuilder enterDepReleaseCodeChemicalShifts() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "dep_release_code_chemical_shifts", this);
        }

        public StrColumnBuilder enterRecvdChemicalShifts() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "recvd_chemical_shifts", this);
        }

        public StrColumnBuilder enterDateChemicalShifts() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date_chemical_shifts", this);
        }

        public StrColumnBuilder enterDateHoldChemicalShifts() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date_hold_chemical_shifts", this);
        }

        public StrColumnBuilder enterStatusCodeCs() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "status_code_cs", this);
        }

        public StrColumnBuilder enterDateOfCsRelease() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date_of_cs_release", this);
        }

        public StrColumnBuilder enterDateNmrData() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date_nmr_data", this);
        }

        public StrColumnBuilder enterDateHoldNmrData() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date_hold_nmr_data", this);
        }

        public StrColumnBuilder enterDateOfNmrDataRelease() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date_of_nmr_data_release", this);
        }

        public StrColumnBuilder enterDepReleaseCodeNmrData() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "dep_release_code_nmr_data", this);
        }

        public StrColumnBuilder enterRecvdNmrData() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "recvd_nmr_data", this);
        }

        public StrColumnBuilder enterStatusCodeNmrData() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "status_code_nmr_data", this);
        }

        public StrColumnBuilder enterMethodsDevelopmentCategory() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "methods_development_category", this);
        }

        public StrColumnBuilder enterPdbFormatCompatible() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdb_format_compatible", this);
        }

        public StrColumnBuilder enterPostRelStatus() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "post_rel_status", this);
        }

        public StrColumnBuilder enterPostRelRecvdCoord() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "post_rel_recvd_coord", this);
        }

        public StrColumnBuilder enterPostRelRecvdCoordDate() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "post_rel_recvd_coord_date", this);
        }

        public StrColumnBuilder enterAuthReqRelDate() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_req_rel_date", this);
        }

        public StrColumnBuilder enterNdbTid() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ndb_tid", this);
        }

        public StrColumnBuilder enterStatusCoordinatesInNDB() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "status_coordinates_in_NDB", this);
        }

        public StrColumnBuilder enterDateRevised() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date_revised", this);
        }

        public StrColumnBuilder enterReplacedEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "replaced_entry_id", this);
        }

        public StrColumnBuilder enterRevisionId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "revision_id", this);
        }

        public StrColumnBuilder enterRevisionDescription() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "revision_description", this);
        }

        public StrColumnBuilder enterPdbxAnnotator() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_annotator", this);
        }

        public StrColumnBuilder enterDateOfNDBRelease() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date_of_NDB_release", this);
        }

        public StrColumnBuilder enterDateReleasedToPDB() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date_released_to_PDB", this);
        }

        public StrColumnBuilder enterSkipPDBREMARK500() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "skip_PDB_REMARK_500", this);
        }

        public StrColumnBuilder enterSkipPDBREMARK() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "skip_PDB_REMARK", this);
        }

        public StrColumnBuilder enterTitleSuppression() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "title_suppression", this);
        }

        public StrColumnBuilder enterDateAcceptedTermsAndConditions() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date_accepted_terms_and_conditions", this);
        }

    }

    public static class PdbxEntityNameBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_entity_name";

        public PdbxEntityNameBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public StrColumnBuilder enterNameType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name_type", this);
        }

    }

    public static class PdbxPrereleaseSeqBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_prerelease_seq";

        public PdbxPrereleaseSeqBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public StrColumnBuilder enterSeqOneLetterCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "seq_one_letter_code", this);
        }

    }

    public static class PdbxPolySeqSchemeBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_poly_seq_scheme";

        public PdbxPolySeqSchemeBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "asym_id", this);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public IntColumnBuilder enterSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "seq_id", this);
        }

        public StrColumnBuilder enterHetero() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "hetero", this);
        }

        public StrColumnBuilder enterMonId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "mon_id", this);
        }

        public StrColumnBuilder enterPdbStrandId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdb_strand_id", this);
        }

        public IntColumnBuilder enterNdbSeqNum() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ndb_seq_num", this);
        }

        public StrColumnBuilder enterPdbSeqNum() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdb_seq_num", this);
        }

        public StrColumnBuilder enterAuthSeqNum() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_num", this);
        }

        public StrColumnBuilder enterPdbMonId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdb_mon_id", this);
        }

        public StrColumnBuilder enterAuthMonId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_mon_id", this);
        }

        public StrColumnBuilder enterPdbInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdb_ins_code", this);
        }

    }

    public static class PdbxNonpolySchemeBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_nonpoly_scheme";

        public PdbxNonpolySchemeBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "asym_id", this);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public StrColumnBuilder enterMonId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "mon_id", this);
        }

        public StrColumnBuilder enterPdbStrandId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdb_strand_id", this);
        }

        public StrColumnBuilder enterNdbSeqNum() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ndb_seq_num", this);
        }

        public StrColumnBuilder enterPdbSeqNum() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdb_seq_num", this);
        }

        public StrColumnBuilder enterAuthSeqNum() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_num", this);
        }

        public StrColumnBuilder enterPdbMonId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdb_mon_id", this);
        }

        public StrColumnBuilder enterAuthMonId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_mon_id", this);
        }

        public StrColumnBuilder enterPdbInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdb_ins_code", this);
        }

    }

    public static class PdbxRefineBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_refine";

        public PdbxRefineBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterPdbxRefineId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_refine_id", this);
        }

        public FloatColumnBuilder enterRFactorAllNoCutoff() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "R_factor_all_no_cutoff", this);
        }

        public FloatColumnBuilder enterRFactorObsNoCutoff() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "R_factor_obs_no_cutoff", this);
        }

        public FloatColumnBuilder enterFreeRFactor4sigCutoff() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "free_R_factor_4sig_cutoff", this);
        }

        public FloatColumnBuilder enterFreeRFactorNoCutoff() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "free_R_factor_no_cutoff", this);
        }

        public FloatColumnBuilder enterFreeRErrorNoCutoff() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "free_R_error_no_cutoff", this);
        }

        public FloatColumnBuilder enterFreeRValTestSetSizePercNoCutoff() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "free_R_val_test_set_size_perc_no_cutoff", this);
        }

        public FloatColumnBuilder enterFreeRValTestSetCtNoCutoff() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "free_R_val_test_set_ct_no_cutoff", this);
        }

        public FloatColumnBuilder enterNumberReflnsObsNoCutoff() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "number_reflns_obs_no_cutoff", this);
        }

        public FloatColumnBuilder enterRFactorAll4sigCutoff() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "R_factor_all_4sig_cutoff", this);
        }

        public FloatColumnBuilder enterRFactorObs4sigCutoff() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "R_factor_obs_4sig_cutoff", this);
        }

        public FloatColumnBuilder enterFreeRVal4sigCutoff() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "free_R_val_4sig_cutoff", this);
        }

        public FloatColumnBuilder enterFreeRValTestSetSizePerc4sigCutoff() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "free_R_val_test_set_size_perc_4sig_cutoff", this);
        }

        public FloatColumnBuilder enterFreeRValTestSetCt4sigCutoff() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "free_R_val_test_set_ct_4sig_cutoff", this);
        }

        public FloatColumnBuilder enterNumberReflnsObs4sigCutoff() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "number_reflns_obs_4sig_cutoff", this);
        }

        public FloatColumnBuilder enterFreeRValNoCutoff() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "free_R_val_no_cutoff", this);
        }

    }

    public static class PdbxStructSheetHbondBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_struct_sheet_hbond";

        public PdbxStructSheetHbondBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterRangeId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "range_id_1", this);
        }

        public StrColumnBuilder enterRangeId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "range_id_2", this);
        }

        public StrColumnBuilder enterSheetId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "sheet_id", this);
        }

        public StrColumnBuilder enterRange1LabelAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "range_1_label_atom_id", this);
        }

        public IntColumnBuilder enterRange1LabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "range_1_label_seq_id", this);
        }

        public StrColumnBuilder enterRange1LabelCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "range_1_label_comp_id", this);
        }

        public StrColumnBuilder enterRange1LabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "range_1_label_asym_id", this);
        }

        public StrColumnBuilder enterRange1AuthAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "range_1_auth_atom_id", this);
        }

        public StrColumnBuilder enterRange1AuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "range_1_auth_seq_id", this);
        }

        public StrColumnBuilder enterRange1AuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "range_1_auth_comp_id", this);
        }

        public StrColumnBuilder enterRange1AuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "range_1_auth_asym_id", this);
        }

        public StrColumnBuilder enterRange1PDBInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "range_1_PDB_ins_code", this);
        }

        public StrColumnBuilder enterRange2LabelAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "range_2_label_atom_id", this);
        }

        public IntColumnBuilder enterRange2LabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "range_2_label_seq_id", this);
        }

        public StrColumnBuilder enterRange2LabelCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "range_2_label_comp_id", this);
        }

        public StrColumnBuilder enterRange2LabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "range_2_label_asym_id", this);
        }

        public StrColumnBuilder enterRange2AuthAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "range_2_auth_atom_id", this);
        }

        public StrColumnBuilder enterRange2AuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "range_2_auth_seq_id", this);
        }

        public StrColumnBuilder enterRange2AuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "range_2_auth_comp_id", this);
        }

        public StrColumnBuilder enterRange2AuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "range_2_auth_asym_id", this);
        }

        public StrColumnBuilder enterRange2PDBInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "range_2_PDB_ins_code", this);
        }

    }

    public static class PdbxXplorFileBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_xplor_file";

        public PdbxXplorFileBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterSerialNo() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "serial_no", this);
        }

        public StrColumnBuilder enterPdbxRefineId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_refine_id", this);
        }

        public StrColumnBuilder enterParamFile() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "param_file", this);
        }

        public StrColumnBuilder enterTopolFile() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "topol_file", this);
        }

    }

    public static class PdbxRefineAuxFileBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_refine_aux_file";

        public PdbxRefineAuxFileBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterSerialNo() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "serial_no", this);
        }

        public StrColumnBuilder enterPdbxRefineId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_refine_id", this);
        }

        public StrColumnBuilder enterFileName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "file_name", this);
        }

        public StrColumnBuilder enterFileType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "file_type", this);
        }

    }

    public static class PdbxDatabaseRelatedBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_database_related";

        public PdbxDatabaseRelatedBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDbName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "db_name", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterDbId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "db_id", this);
        }

        public StrColumnBuilder enterContentType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "content_type", this);
        }

    }

    public static class PdbxEntityAssemblyBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_entity_assembly";

        public PdbxEntityAssemblyBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public StrColumnBuilder enterBiolId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "biol_id", this);
        }

        public IntColumnBuilder enterNumCopies() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_copies", this);
        }

    }

    public static class PdbxExptlCrystalGrowCompBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_exptl_crystal_grow_comp";

        public PdbxExptlCrystalGrowCompBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterCrystalId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "crystal_id", this);
        }

        public StrColumnBuilder enterCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id", this);
        }

        public StrColumnBuilder enterCompName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_name", this);
        }

        public StrColumnBuilder enterSolId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "sol_id", this);
        }

        public FloatColumnBuilder enterConc() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "conc", this);
        }

        public StrColumnBuilder enterConcRange() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "conc_range", this);
        }

        public StrColumnBuilder enterConcUnits() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "conc_units", this);
        }

    }

    public static class PdbxExptlCrystalGrowSolBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_exptl_crystal_grow_sol";

        public PdbxExptlCrystalGrowSolBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterCrystalId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "crystal_id", this);
        }

        public StrColumnBuilder enterSolId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "sol_id", this);
        }

        public FloatColumnBuilder enterVolume() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "volume", this);
        }

        public StrColumnBuilder enterVolumeUnits() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "volume_units", this);
        }

        public FloatColumnBuilder enterPH() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pH", this);
        }

    }

    public static class PdbxExptlCrystalCryoTreatmentBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_exptl_crystal_cryo_treatment";

        public PdbxExptlCrystalCryoTreatmentBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterCrystalId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "crystal_id", this);
        }

        public StrColumnBuilder enterFinalSolutionDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "final_solution_details", this);
        }

        public StrColumnBuilder enterSoakingDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "soaking_details", this);
        }

        public StrColumnBuilder enterCoolingDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "cooling_details", this);
        }

        public StrColumnBuilder enterAnnealingDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "annealing_details", this);
        }

    }

    public static class PdbxRefineTlsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_refine_tls";

        public PdbxRefineTlsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterPdbxRefineId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_refine_id", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "method", this);
        }

        public FloatColumnBuilder enterOriginX() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "origin_x", this);
        }

        public FloatColumnBuilder enterOriginY() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "origin_y", this);
        }

        public FloatColumnBuilder enterOriginZ() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "origin_z", this);
        }

        public FloatColumnBuilder enterT11() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "T[1][1]", this);
        }

        public FloatColumnBuilder enterT11Esd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "T[1][1]_esd", this);
        }

        public FloatColumnBuilder enterT12() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "T[1][2]", this);
        }

        public FloatColumnBuilder enterT12Esd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "T[1][2]_esd", this);
        }

        public FloatColumnBuilder enterT13() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "T[1][3]", this);
        }

        public FloatColumnBuilder enterT13Esd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "T[1][3]_esd", this);
        }

        public FloatColumnBuilder enterT22() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "T[2][2]", this);
        }

        public FloatColumnBuilder enterT22Esd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "T[2][2]_esd", this);
        }

        public FloatColumnBuilder enterT23() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "T[2][3]", this);
        }

        public FloatColumnBuilder enterT23Esd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "T[2][3]_esd", this);
        }

        public FloatColumnBuilder enterT33() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "T[3][3]", this);
        }

        public FloatColumnBuilder enterT33Esd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "T[3][3]_esd", this);
        }

        public FloatColumnBuilder enterL11() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "L[1][1]", this);
        }

        public FloatColumnBuilder enterL11Esd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "L[1][1]_esd", this);
        }

        public FloatColumnBuilder enterL12() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "L[1][2]", this);
        }

        public FloatColumnBuilder enterL12Esd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "L[1][2]_esd", this);
        }

        public FloatColumnBuilder enterL13() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "L[1][3]", this);
        }

        public FloatColumnBuilder enterL13Esd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "L[1][3]_esd", this);
        }

        public FloatColumnBuilder enterL22() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "L[2][2]", this);
        }

        public FloatColumnBuilder enterL22Esd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "L[2][2]_esd", this);
        }

        public FloatColumnBuilder enterL23() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "L[2][3]", this);
        }

        public FloatColumnBuilder enterL23Esd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "L[2][3]_esd", this);
        }

        public FloatColumnBuilder enterL33() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "L[3][3]", this);
        }

        public FloatColumnBuilder enterL33Esd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "L[3][3]_esd", this);
        }

        public FloatColumnBuilder enterS11() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "S[1][1]", this);
        }

        public FloatColumnBuilder enterS11Esd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "S[1][1]_esd", this);
        }

        public FloatColumnBuilder enterS12() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "S[1][2]", this);
        }

        public FloatColumnBuilder enterS12Esd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "S[1][2]_esd", this);
        }

        public FloatColumnBuilder enterS13() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "S[1][3]", this);
        }

        public FloatColumnBuilder enterS13Esd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "S[1][3]_esd", this);
        }

        public FloatColumnBuilder enterS21() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "S[2][1]", this);
        }

        public FloatColumnBuilder enterS21Esd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "S[2][1]_esd", this);
        }

        public FloatColumnBuilder enterS22() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "S[2][2]", this);
        }

        public FloatColumnBuilder enterS22Esd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "S[2][2]_esd", this);
        }

        public FloatColumnBuilder enterS23() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "S[2][3]", this);
        }

        public FloatColumnBuilder enterS23Esd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "S[2][3]_esd", this);
        }

        public FloatColumnBuilder enterS31() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "S[3][1]", this);
        }

        public FloatColumnBuilder enterS31Esd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "S[3][1]_esd", this);
        }

        public FloatColumnBuilder enterS32() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "S[3][2]", this);
        }

        public FloatColumnBuilder enterS32Esd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "S[3][2]_esd", this);
        }

        public FloatColumnBuilder enterS33() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "S[3][3]", this);
        }

        public FloatColumnBuilder enterS33Esd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "S[3][3]_esd", this);
        }

    }

    public static class PdbxRefineTlsGroupBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_refine_tls_group";

        public PdbxRefineTlsGroupBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterPdbxRefineId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_refine_id", this);
        }

        public StrColumnBuilder enterRefineTlsId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "refine_tls_id", this);
        }

        public StrColumnBuilder enterBegLabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "beg_label_asym_id", this);
        }

        public IntColumnBuilder enterBegLabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "beg_label_seq_id", this);
        }

        public StrColumnBuilder enterBegAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "beg_auth_asym_id", this);
        }

        public StrColumnBuilder enterBegAuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "beg_auth_seq_id", this);
        }

        public StrColumnBuilder enterBegPDBInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "beg_PDB_ins_code", this);
        }

        public StrColumnBuilder enterEndLabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "end_label_asym_id", this);
        }

        public IntColumnBuilder enterEndLabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "end_label_seq_id", this);
        }

        public StrColumnBuilder enterEndAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "end_auth_asym_id", this);
        }

        public StrColumnBuilder enterEndAuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "end_auth_seq_id", this);
        }

        public StrColumnBuilder enterEndPDBInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "end_PDB_ins_code", this);
        }

        public StrColumnBuilder enterSelection() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "selection", this);
        }

        public StrColumnBuilder enterSelectionDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "selection_details", this);
        }

    }

    public static class PdbxContactAuthorBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_contact_author";

        public PdbxContactAuthorBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterAddress1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "address_1", this);
        }

        public StrColumnBuilder enterAddress2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "address_2", this);
        }

        public StrColumnBuilder enterAddress3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "address_3", this);
        }

        public StrColumnBuilder enterLegacyAddress() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "legacy_address", this);
        }

        public StrColumnBuilder enterCity() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "city", this);
        }

        public StrColumnBuilder enterStateProvince() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "state_province", this);
        }

        public StrColumnBuilder enterPostalCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "postal_code", this);
        }

        public StrColumnBuilder enterEmail() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "email", this);
        }

        public StrColumnBuilder enterFax() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "fax", this);
        }

        public StrColumnBuilder enterNameFirst() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name_first", this);
        }

        public StrColumnBuilder enterNameLast() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name_last", this);
        }

        public StrColumnBuilder enterNameMi() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name_mi", this);
        }

        public StrColumnBuilder enterNameSalutation() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name_salutation", this);
        }

        public StrColumnBuilder enterCountry() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "country", this);
        }

        public StrColumnBuilder enterContinent() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "continent", this);
        }

        public StrColumnBuilder enterPhone() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "phone", this);
        }

        public StrColumnBuilder enterRole() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "role", this);
        }

        public StrColumnBuilder enterOrganizationType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "organization_type", this);
        }

        public StrColumnBuilder enterIdentifierORCID() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "identifier_ORCID", this);
        }

    }

    public static class PdbxSGProjectBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_SG_project";

        public PdbxSGProjectBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterProjectName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "project_name", this);
        }

        public StrColumnBuilder enterFullNameOfCenter() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "full_name_of_center", this);
        }

        public StrColumnBuilder enterInitialOfCenter() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "initial_of_center", this);
        }

    }

    public static class PdbxAtomSiteAnisoTlsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_atom_site_aniso_tls";

        public PdbxAtomSiteAnisoTlsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterTypeSymbol() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type_symbol", this);
        }

        public StrColumnBuilder enterTlsGroupId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "tls_group_id", this);
        }

        public StrColumnBuilder enterAuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_comp_id", this);
        }

        public StrColumnBuilder enterAuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id", this);
        }

        public StrColumnBuilder enterAuthAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_atom_id", this);
        }

        public StrColumnBuilder enterAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id", this);
        }

        public StrColumnBuilder enterPDBInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "PDB_ins_code", this);
        }

        public StrColumnBuilder enterLabelAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_alt_id", this);
        }

        public StrColumnBuilder enterLabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_asym_id", this);
        }

        public StrColumnBuilder enterLabelAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_atom_id", this);
        }

        public StrColumnBuilder enterLabelCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_comp_id", this);
        }

        public IntColumnBuilder enterLabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "label_seq_id", this);
        }

        public FloatColumnBuilder enterUTls11() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "U_tls[1][1]", this);
        }

        public FloatColumnBuilder enterUTls22() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "U_tls[2][2]", this);
        }

        public FloatColumnBuilder enterUTls33() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "U_tls[3][3]", this);
        }

        public FloatColumnBuilder enterUTls12() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "U_tls[1][2]", this);
        }

        public FloatColumnBuilder enterUTls13() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "U_tls[1][3]", this);
        }

        public FloatColumnBuilder enterUTls23() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "U_tls[2][3]", this);
        }

    }

    public static class PdbxNmrDetailsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_nmr_details";

        public PdbxNmrDetailsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterText() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "text", this);
        }

    }

    public static class PdbxNmrSampleDetailsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_nmr_sample_details";

        public PdbxNmrSampleDetailsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterSolutionId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "solution_id", this);
        }

        public StrColumnBuilder enterContents() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "contents", this);
        }

        public StrColumnBuilder enterSolventSystem() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "solvent_system", this);
        }

        public StrColumnBuilder enterLabel() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class PdbxNmrExptlSampleBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_nmr_exptl_sample";

        public PdbxNmrExptlSampleBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterSolutionId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "solution_id", this);
        }

        public StrColumnBuilder enterComponent() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "component", this);
        }

        public FloatColumnBuilder enterConcentration() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "concentration", this);
        }

        public StrColumnBuilder enterConcentrationRange() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "concentration_range", this);
        }

        public StrColumnBuilder enterConcentrationUnits() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "concentration_units", this);
        }

        public StrColumnBuilder enterIsotopicLabeling() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "isotopic_labeling", this);
        }

        public FloatColumnBuilder enterConcentrationErr() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "concentration_err", this);
        }

    }

    public static class PdbxNmrExptlSampleConditionsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_nmr_exptl_sample_conditions";

        public PdbxNmrExptlSampleConditionsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterConditionsId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "conditions_id", this);
        }

        public StrColumnBuilder enterTemperature() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "temperature", this);
        }

        public StrColumnBuilder enterPressureUnits() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pressure_units", this);
        }

        public StrColumnBuilder enterPressure() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pressure", this);
        }

        public StrColumnBuilder enterPH() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pH", this);
        }

        public StrColumnBuilder enterIonicStrength() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ionic_strength", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public FloatColumnBuilder enterIonicStrengthErr() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ionic_strength_err", this);
        }

        public StrColumnBuilder enterIonicStrengthUnits() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ionic_strength_units", this);
        }

        public StrColumnBuilder enterLabel() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label", this);
        }

        public FloatColumnBuilder enterPHErr() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pH_err", this);
        }

        public StrColumnBuilder enterPHUnits() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pH_units", this);
        }

        public FloatColumnBuilder enterPressureErr() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pressure_err", this);
        }

        public FloatColumnBuilder enterTemperatureErr() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "temperature_err", this);
        }

        public StrColumnBuilder enterTemperatureUnits() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "temperature_units", this);
        }

    }

    public static class PdbxNmrSpectrometerBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_nmr_spectrometer";

        public PdbxNmrSpectrometerBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterSpectrometerId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "spectrometer_id", this);
        }

        public StrColumnBuilder enterModel() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "model", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public StrColumnBuilder enterManufacturer() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "manufacturer", this);
        }

        public FloatColumnBuilder enterFieldStrength() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "field_strength", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

    }

    public static class PdbxNmrExptlBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_nmr_exptl";

        public PdbxNmrExptlBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterExperimentId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "experiment_id", this);
        }

        public StrColumnBuilder enterConditionsId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "conditions_id", this);
        }

        public StrColumnBuilder enterSolutionId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "solution_id", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public IntColumnBuilder enterSpectrometerId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "spectrometer_id", this);
        }

        public StrColumnBuilder enterSampleState() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "sample_state", this);
        }

    }

    public static class PdbxNmrSoftwareBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_nmr_software";

        public PdbxNmrSoftwareBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal", this);
        }

        public StrColumnBuilder enterClassification() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "classification", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public StrColumnBuilder enterVersion() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "version", this);
        }

        public StrColumnBuilder enterAuthors() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "authors", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class PdbxNmrConstraintsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_nmr_constraints";

        public PdbxNmrConstraintsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public IntColumnBuilder enterNOEConstraintsTotal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "NOE_constraints_total", this);
        }

        public IntColumnBuilder enterNOEIntraresidueTotalCount() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "NOE_intraresidue_total_count", this);
        }

        public IntColumnBuilder enterNOEInterentityTotalCount() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "NOE_interentity_total_count", this);
        }

        public IntColumnBuilder enterNOESequentialTotalCount() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "NOE_sequential_total_count", this);
        }

        public IntColumnBuilder enterNOEMediumRangeTotalCount() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "NOE_medium_range_total_count", this);
        }

        public IntColumnBuilder enterNOELongRangeTotalCount() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "NOE_long_range_total_count", this);
        }

        public IntColumnBuilder enterProteinPhiAngleConstraintsTotalCount() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "protein_phi_angle_constraints_total_count", this);
        }

        public IntColumnBuilder enterProteinPsiAngleConstraintsTotalCount() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "protein_psi_angle_constraints_total_count", this);
        }

        public IntColumnBuilder enterProteinChiAngleConstraintsTotalCount() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "protein_chi_angle_constraints_total_count", this);
        }

        public IntColumnBuilder enterProteinOtherAngleConstraintsTotalCount() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "protein_other_angle_constraints_total_count", this);
        }

        public StrColumnBuilder enterNOEInterprotonDistanceEvaluation() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "NOE_interproton_distance_evaluation", this);
        }

        public StrColumnBuilder enterNOEPseudoatomCorrections() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "NOE_pseudoatom_corrections", this);
        }

        public StrColumnBuilder enterNOEMotionalAveragingCorrection() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "NOE_motional_averaging_correction", this);
        }

        public IntColumnBuilder enterHydrogenBondConstraintsTotalCount() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "hydrogen_bond_constraints_total_count", this);
        }

        public IntColumnBuilder enterDisulfideBondConstraintsTotalCount() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "disulfide_bond_constraints_total_count", this);
        }

        public IntColumnBuilder enterNAAlpha_angleConstraintsTotalCount() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "NA_alpha-angle_constraints_total_count", this);
        }

        public IntColumnBuilder enterNABeta_angleConstraintsTotalCount() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "NA_beta-angle_constraints_total_count", this);
        }

        public IntColumnBuilder enterNAGamma_angleConstraintsTotalCount() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "NA_gamma-angle_constraints_total_count", this);
        }

        public IntColumnBuilder enterNADelta_angleConstraintsTotalCount() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "NA_delta-angle_constraints_total_count", this);
        }

        public IntColumnBuilder enterNAEpsilon_angleConstraintsTotalCount() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "NA_epsilon-angle_constraints_total_count", this);
        }

        public IntColumnBuilder enterNAChi_angleConstraintsTotalCount() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "NA_chi-angle_constraints_total_count", this);
        }

        public IntColumnBuilder enterNAOther_angleConstraintsTotalCount() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "NA_other-angle_constraints_total_count", this);
        }

        public IntColumnBuilder enterNASugarPuckerConstraintsTotalCount() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "NA_sugar_pucker_constraints_total_count", this);
        }

    }

    public static class PdbxNmrEnsembleBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_nmr_ensemble";

        public PdbxNmrEnsembleBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public IntColumnBuilder enterConformersCalculatedTotalNumber() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "conformers_calculated_total_number", this);
        }

        public IntColumnBuilder enterConformersSubmittedTotalNumber() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "conformers_submitted_total_number", this);
        }

        public StrColumnBuilder enterConformerSelectionCriteria() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "conformer_selection_criteria", this);
        }

        public IntColumnBuilder enterRepresentativeConformer() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "representative_conformer", this);
        }

        public IntColumnBuilder enterAverageConstraintsPerResidue() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "average_constraints_per_residue", this);
        }

        public IntColumnBuilder enterAverageConstraintViolationsPerResidue() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "average_constraint_violations_per_residue", this);
        }

        public FloatColumnBuilder enterMaximumDistanceConstraintViolation() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "maximum_distance_constraint_violation", this);
        }

        public FloatColumnBuilder enterAverageDistanceConstraintViolation() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "average_distance_constraint_violation", this);
        }

        public FloatColumnBuilder enterMaximumUpperDistanceConstraintViolation() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "maximum_upper_distance_constraint_violation", this);
        }

        public FloatColumnBuilder enterMaximumLowerDistanceConstraintViolation() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "maximum_lower_distance_constraint_violation", this);
        }

        public StrColumnBuilder enterDistanceConstraintViolationMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "distance_constraint_violation_method", this);
        }

        public FloatColumnBuilder enterMaximumTorsionAngleConstraintViolation() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "maximum_torsion_angle_constraint_violation", this);
        }

        public FloatColumnBuilder enterAverageTorsionAngleConstraintViolation() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "average_torsion_angle_constraint_violation", this);
        }

        public StrColumnBuilder enterTorsionAngleConstraintViolationMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "torsion_angle_constraint_violation_method", this);
        }

    }

    public static class PdbxNmrEnsembleRmsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_nmr_ensemble_rms";

        public PdbxNmrEnsembleRmsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public IntColumnBuilder enterResidueRangeBegin() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "residue_range_begin", this);
        }

        public StrColumnBuilder enterChainRangeBegin() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "chain_range_begin", this);
        }

        public IntColumnBuilder enterResidueRangeEnd() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "residue_range_end", this);
        }

        public StrColumnBuilder enterChainRangeEnd() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "chain_range_end", this);
        }

        public StrColumnBuilder enterAtomType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_type", this);
        }

        public FloatColumnBuilder enterDistanceRmsDev() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "distance_rms_dev", this);
        }

        public FloatColumnBuilder enterDistanceRmsDevError() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "distance_rms_dev_error", this);
        }

        public FloatColumnBuilder enterCovalentBondRmsDev() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "covalent_bond_rms_dev", this);
        }

        public FloatColumnBuilder enterCovalentBondRmsDevError() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "covalent_bond_rms_dev_error", this);
        }

        public FloatColumnBuilder enterBondAngleRmsDev() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "bond_angle_rms_dev", this);
        }

        public FloatColumnBuilder enterBondAngleRmsDevError() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "bond_angle_rms_dev_error", this);
        }

        public FloatColumnBuilder enterImproperTorsionAngleRmsDev() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "improper_torsion_angle_rms_dev", this);
        }

        public FloatColumnBuilder enterImproperTorsionAngleRmsDevError() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "improper_torsion_angle_rms_dev_error", this);
        }

        public FloatColumnBuilder enterPeptidePlanarityRmsDev() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "peptide_planarity_rms_dev", this);
        }

        public FloatColumnBuilder enterPeptidePlanarityRmsDevError() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "peptide_planarity_rms_dev_error", this);
        }

        public FloatColumnBuilder enterDihedralAnglesRmsDev() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "dihedral_angles_rms_dev", this);
        }

        public FloatColumnBuilder enterDihedralAnglesRmsDevError() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "dihedral_angles_rms_dev_error", this);
        }

        public StrColumnBuilder enterCoordAverageRmsdMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "coord_average_rmsd_method", this);
        }

    }

    public static class PdbxNmrRepresentativeBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_nmr_representative";

        public PdbxNmrRepresentativeBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterConformerId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "conformer_id", this);
        }

        public StrColumnBuilder enterSelectionCriteria() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "selection_criteria", this);
        }

    }

    public static class PdbxNmrRefineBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_nmr_refine";

        public PdbxNmrRefineBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "method", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public IntColumnBuilder enterSoftwareOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "software_ordinal", this);
        }

    }

    public static class PdbxNmrForceConstantsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_nmr_force_constants";

        public PdbxNmrForceConstantsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public FloatColumnBuilder enterExptlDistanceTerm() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "exptl_distance_term", this);
        }

        public StrColumnBuilder enterExptlDistanceTermUnits() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "exptl_distance_term_units", this);
        }

        public FloatColumnBuilder enterExptlTorsionAnglesTerm() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "exptl_torsion_angles_term", this);
        }

        public StrColumnBuilder enterExptlTorsionAnglesTermUnits() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "exptl_torsion_angles_term_units", this);
        }

        public FloatColumnBuilder enterExptlJCouplingTerm() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "exptl_J_coupling_term", this);
        }

        public StrColumnBuilder enterExptlJCouplingTermUnits() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "exptl_J_coupling_term_units", this);
        }

        public FloatColumnBuilder enterExptl13CShiftTerm() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "exptl_13C_shift_term", this);
        }

        public StrColumnBuilder enterExptl13CShiftTermUnits() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "exptl_13C_shift_term_units", this);
        }

        public FloatColumnBuilder enterExptl1HShiftTerm() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "exptl_1H_shift_term", this);
        }

        public StrColumnBuilder enterExptl1HShiftTermUnits() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "exptl_1H_shift_term_units", this);
        }

        public FloatColumnBuilder enterExptlDipolarCouplingTerm() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "exptl_dipolar_coupling_term", this);
        }

        public StrColumnBuilder enterExptlDipolarCouplingTermUnits() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "exptl_dipolar_coupling_term_units", this);
        }

        public FloatColumnBuilder enterExptlDIsotopeShiftTerm() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "exptl_D_isotope_shift_term", this);
        }

        public StrColumnBuilder enterExptlDIsotopeShiftTermUnits() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "exptl_D_isotope_shift_term_units", this);
        }

        public FloatColumnBuilder enterCovalentGeomBondTerm() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "covalent_geom_bond_term", this);
        }

        public StrColumnBuilder enterCovalentGeomBondTermUnits() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "covalent_geom_bond_term_units", this);
        }

        public FloatColumnBuilder enterCovalentGeomAnglesTerm() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "covalent_geom_angles_term", this);
        }

        public StrColumnBuilder enterCovalentGeomAnglesTermUnits() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "covalent_geom_angles_term_units", this);
        }

        public FloatColumnBuilder enterCovalentGeomImpropersTerm() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "covalent_geom_impropers_term", this);
        }

        public StrColumnBuilder enterCovalentGeomImpropersTermUnits() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "covalent_geom_impropers_term_units", this);
        }

        public StrColumnBuilder enterNon_bondedInterVanDerWaalsTermType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "non-bonded_inter_van_der_Waals_term_type", this);
        }

        public FloatColumnBuilder enterNon_bondedInterVanDerWaalsTerm() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "non-bonded_inter_van_der_Waals_term", this);
        }

        public StrColumnBuilder enterNon_bondedInterVanDerWaalsTermUnits() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "non-bonded_inter_van_der_Waals_term_units", this);
        }

        public FloatColumnBuilder enterNon_bondedInterConfDbPotentialTerm() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "non-bonded_inter_conf_db_potential_term", this);
        }

        public FloatColumnBuilder enterNon_bondedInterRadiusOfGyrationTerm() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "non-bonded_inter_radius_of_gyration_term", this);
        }

        public StrColumnBuilder enterNon_bondedInterRadiusOfGyrationTermUnits() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "non-bonded_inter_radius_of_gyration_term_units", this);
        }

    }

    public static class NdbStructConfNaBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ndb_struct_conf_na";

        public NdbStructConfNaBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterFeature() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "feature", this);
        }

        public IntColumnBuilder enterFeatureCount() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "feature_count", this);
        }

    }

    public static class NdbStructFeatureNaBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ndb_struct_feature_na";

        public NdbStructFeatureNaBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterFeature() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "feature", this);
        }

        public IntColumnBuilder enterFeatureCount() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "feature_count", this);
        }

    }

    public static class NdbStructNaBasePairBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ndb_struct_na_base_pair";

        public NdbStructNaBasePairBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterModelNumber() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "model_number", this);
        }

        public IntColumnBuilder enterPairNumber() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pair_number", this);
        }

        public StrColumnBuilder enterPairName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pair_name", this);
        }

        public StrColumnBuilder enterILabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "i_label_asym_id", this);
        }

        public StrColumnBuilder enterILabelCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "i_label_comp_id", this);
        }

        public IntColumnBuilder enterILabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "i_label_seq_id", this);
        }

        public StrColumnBuilder enterISymmetry() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "i_symmetry", this);
        }

        public StrColumnBuilder enterJLabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "j_label_asym_id", this);
        }

        public StrColumnBuilder enterJLabelCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "j_label_comp_id", this);
        }

        public IntColumnBuilder enterJLabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "j_label_seq_id", this);
        }

        public StrColumnBuilder enterJSymmetry() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "j_symmetry", this);
        }

        public StrColumnBuilder enterIAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "i_auth_asym_id", this);
        }

        public StrColumnBuilder enterIAuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "i_auth_seq_id", this);
        }

        public StrColumnBuilder enterIPDBInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "i_PDB_ins_code", this);
        }

        public StrColumnBuilder enterJAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "j_auth_asym_id", this);
        }

        public StrColumnBuilder enterJAuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "j_auth_seq_id", this);
        }

        public StrColumnBuilder enterJPDBInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "j_PDB_ins_code", this);
        }

        public FloatColumnBuilder enterShear() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "shear", this);
        }

        public FloatColumnBuilder enterStretch() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "stretch", this);
        }

        public FloatColumnBuilder enterStagger() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "stagger", this);
        }

        public FloatColumnBuilder enterBuckle() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "buckle", this);
        }

        public FloatColumnBuilder enterPropeller() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "propeller", this);
        }

        public FloatColumnBuilder enterOpening() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "opening", this);
        }

        public IntColumnBuilder enterHbondType12() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "hbond_type_12", this);
        }

        public IntColumnBuilder enterHbondType28() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "hbond_type_28", this);
        }

    }

    public static class NdbStructNaBasePairStepBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ndb_struct_na_base_pair_step";

        public NdbStructNaBasePairStepBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterModelNumber() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "model_number", this);
        }

        public IntColumnBuilder enterStepNumber() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "step_number", this);
        }

        public StrColumnBuilder enterStepName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "step_name", this);
        }

        public StrColumnBuilder enterILabelAsymId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "i_label_asym_id_1", this);
        }

        public StrColumnBuilder enterILabelCompId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "i_label_comp_id_1", this);
        }

        public IntColumnBuilder enterILabelSeqId1() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "i_label_seq_id_1", this);
        }

        public StrColumnBuilder enterISymmetry1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "i_symmetry_1", this);
        }

        public StrColumnBuilder enterJLabelAsymId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "j_label_asym_id_1", this);
        }

        public StrColumnBuilder enterJLabelCompId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "j_label_comp_id_1", this);
        }

        public IntColumnBuilder enterJLabelSeqId1() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "j_label_seq_id_1", this);
        }

        public StrColumnBuilder enterJSymmetry1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "j_symmetry_1", this);
        }

        public StrColumnBuilder enterILabelAsymId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "i_label_asym_id_2", this);
        }

        public StrColumnBuilder enterILabelCompId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "i_label_comp_id_2", this);
        }

        public IntColumnBuilder enterILabelSeqId2() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "i_label_seq_id_2", this);
        }

        public StrColumnBuilder enterISymmetry2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "i_symmetry_2", this);
        }

        public StrColumnBuilder enterJLabelAsymId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "j_label_asym_id_2", this);
        }

        public StrColumnBuilder enterJLabelCompId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "j_label_comp_id_2", this);
        }

        public IntColumnBuilder enterJLabelSeqId2() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "j_label_seq_id_2", this);
        }

        public StrColumnBuilder enterJSymmetry2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "j_symmetry_2", this);
        }

        public StrColumnBuilder enterIAuthAsymId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "i_auth_asym_id_1", this);
        }

        public StrColumnBuilder enterIAuthSeqId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "i_auth_seq_id_1", this);
        }

        public StrColumnBuilder enterIPDBInsCode1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "i_PDB_ins_code_1", this);
        }

        public StrColumnBuilder enterJAuthAsymId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "j_auth_asym_id_1", this);
        }

        public StrColumnBuilder enterJAuthSeqId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "j_auth_seq_id_1", this);
        }

        public StrColumnBuilder enterJPDBInsCode1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "j_PDB_ins_code_1", this);
        }

        public StrColumnBuilder enterIAuthAsymId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "i_auth_asym_id_2", this);
        }

        public StrColumnBuilder enterIAuthSeqId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "i_auth_seq_id_2", this);
        }

        public StrColumnBuilder enterIPDBInsCode2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "i_PDB_ins_code_2", this);
        }

        public StrColumnBuilder enterJAuthAsymId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "j_auth_asym_id_2", this);
        }

        public StrColumnBuilder enterJAuthSeqId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "j_auth_seq_id_2", this);
        }

        public StrColumnBuilder enterJPDBInsCode2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "j_PDB_ins_code_2", this);
        }

        public FloatColumnBuilder enterShift() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "shift", this);
        }

        public FloatColumnBuilder enterSlide() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "slide", this);
        }

        public FloatColumnBuilder enterRise() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rise", this);
        }

        public FloatColumnBuilder enterTilt() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "tilt", this);
        }

        public FloatColumnBuilder enterRoll() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "roll", this);
        }

        public FloatColumnBuilder enterTwist() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "twist", this);
        }

        public FloatColumnBuilder enterXDisplacement() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "x_displacement", this);
        }

        public FloatColumnBuilder enterYDisplacement() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "y_displacement", this);
        }

        public FloatColumnBuilder enterHelicalRise() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "helical_rise", this);
        }

        public FloatColumnBuilder enterInclination() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "inclination", this);
        }

        public FloatColumnBuilder enterTip() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "tip", this);
        }

        public FloatColumnBuilder enterHelicalTwist() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "helical_twist", this);
        }

    }

    public static class NdbOriginalNdbCoordinatesBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ndb_original_ndb_coordinates";

        public NdbOriginalNdbCoordinatesBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterCoordSection() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "coord_section", this);
        }

    }

    public static class PdbxEntityNonpolyBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_entity_nonpoly";

        public PdbxEntityNonpolyBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public StrColumnBuilder enterCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public StrColumnBuilder enterMaModelMode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ma_model_mode", this);
        }

    }

    public static class PdbxPhasingDmBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_phasing_dm";

        public PdbxPhasingDmBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "method", this);
        }

        public StrColumnBuilder enterMaskType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "mask_type", this);
        }

        public FloatColumnBuilder enterFomAcentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "fom_acentric", this);
        }

        public FloatColumnBuilder enterFomCentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "fom_centric", this);
        }

        public FloatColumnBuilder enterFom() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "fom", this);
        }

        public IntColumnBuilder enterReflnsAcentric() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "reflns_acentric", this);
        }

        public IntColumnBuilder enterReflnsCentric() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "reflns_centric", this);
        }

        public IntColumnBuilder enterReflns() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "reflns", this);
        }

        public FloatColumnBuilder enterDeltaPhiInitial() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "delta_phi_initial", this);
        }

        public FloatColumnBuilder enterDeltaPhiFinal() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "delta_phi_final", this);
        }

    }

    public static class PdbxPhasingDmShellBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_phasing_dm_shell";

        public PdbxPhasingDmShellBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public FloatColumnBuilder enterDResHigh() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "d_res_high", this);
        }

        public FloatColumnBuilder enterDResLow() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "d_res_low", this);
        }

        public FloatColumnBuilder enterFomAcentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "fom_acentric", this);
        }

        public FloatColumnBuilder enterFomCentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "fom_centric", this);
        }

        public FloatColumnBuilder enterFom() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "fom", this);
        }

        public IntColumnBuilder enterReflnsAcentric() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "reflns_acentric", this);
        }

        public IntColumnBuilder enterReflnsCentric() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "reflns_centric", this);
        }

        public IntColumnBuilder enterReflns() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "reflns", this);
        }

        public FloatColumnBuilder enterDeltaPhiInitial() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "delta_phi_initial", this);
        }

        public FloatColumnBuilder enterDeltaPhiFinal() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "delta_phi_final", this);
        }

    }

    public static class PdbxPhasingMADShellBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_phasing_MAD_shell";

        public PdbxPhasingMADShellBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public FloatColumnBuilder enterDResLow() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "d_res_low", this);
        }

        public FloatColumnBuilder enterDResHigh() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "d_res_high", this);
        }

        public FloatColumnBuilder enterReflnsAcentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "reflns_acentric", this);
        }

        public IntColumnBuilder enterReflnsCentric() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "reflns_centric", this);
        }

        public IntColumnBuilder enterReflns() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "reflns", this);
        }

        public FloatColumnBuilder enterFomAcentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "fom_acentric", this);
        }

        public FloatColumnBuilder enterFomCentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "fom_centric", this);
        }

        public FloatColumnBuilder enterFom() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "fom", this);
        }

        public FloatColumnBuilder enterRCullisCentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "R_cullis_centric", this);
        }

        public FloatColumnBuilder enterRCullisAcentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "R_cullis_acentric", this);
        }

        public FloatColumnBuilder enterRCullis() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "R_cullis", this);
        }

        public FloatColumnBuilder enterRKrautCentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "R_kraut_centric", this);
        }

        public FloatColumnBuilder enterRKrautAcentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "R_kraut_acentric", this);
        }

        public FloatColumnBuilder enterRKraut() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "R_kraut", this);
        }

        public FloatColumnBuilder enterLocCentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "loc_centric", this);
        }

        public FloatColumnBuilder enterLocAcentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "loc_acentric", this);
        }

        public FloatColumnBuilder enterLoc() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "loc", this);
        }

        public FloatColumnBuilder enterPowerCentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "power_centric", this);
        }

        public FloatColumnBuilder enterPowerAcentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "power_acentric", this);
        }

        public FloatColumnBuilder enterPower() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "power", this);
        }

    }

    public static class PdbxPhasingMADSetBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_phasing_MAD_set";

        public PdbxPhasingMADSetBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public FloatColumnBuilder enterDResLow() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "d_res_low", this);
        }

        public FloatColumnBuilder enterDResHigh() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "d_res_high", this);
        }

        public IntColumnBuilder enterNumberOfSites() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number_of_sites", this);
        }

        public IntColumnBuilder enterReflnsAcentric() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "reflns_acentric", this);
        }

        public IntColumnBuilder enterReflnsCentric() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "reflns_centric", this);
        }

        public IntColumnBuilder enterReflns() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "reflns", this);
        }

        public FloatColumnBuilder enterFomAcentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "fom_acentric", this);
        }

        public FloatColumnBuilder enterFomCentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "fom_centric", this);
        }

        public FloatColumnBuilder enterFom() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "fom", this);
        }

        public FloatColumnBuilder enterRCullisCentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "R_cullis_centric", this);
        }

        public FloatColumnBuilder enterRCullisAcentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "R_cullis_acentric", this);
        }

        public FloatColumnBuilder enterRCullis() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "R_cullis", this);
        }

        public FloatColumnBuilder enterRKrautCentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "R_kraut_centric", this);
        }

        public FloatColumnBuilder enterRKrautAcentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "R_kraut_acentric", this);
        }

        public FloatColumnBuilder enterRKraut() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "R_kraut", this);
        }

        public FloatColumnBuilder enterLocCentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "loc_centric", this);
        }

        public FloatColumnBuilder enterLocAcentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "loc_acentric", this);
        }

        public FloatColumnBuilder enterLoc() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "loc", this);
        }

        public FloatColumnBuilder enterPowerCentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "power_centric", this);
        }

        public FloatColumnBuilder enterPowerAcentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "power_acentric", this);
        }

        public FloatColumnBuilder enterPower() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "power", this);
        }

    }

    public static class PdbxPhasingMADSetShellBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_phasing_MAD_set_shell";

        public PdbxPhasingMADSetShellBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public FloatColumnBuilder enterDResLow() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "d_res_low", this);
        }

        public FloatColumnBuilder enterDResHigh() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "d_res_high", this);
        }

        public IntColumnBuilder enterReflnsAcentric() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "reflns_acentric", this);
        }

        public IntColumnBuilder enterReflnsCentric() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "reflns_centric", this);
        }

        public IntColumnBuilder enterReflns() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "reflns", this);
        }

        public FloatColumnBuilder enterFomAcentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "fom_acentric", this);
        }

        public FloatColumnBuilder enterFomCentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "fom_centric", this);
        }

        public FloatColumnBuilder enterFom() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "fom", this);
        }

        public FloatColumnBuilder enterRCullisCentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "R_cullis_centric", this);
        }

        public FloatColumnBuilder enterRCullisAcentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "R_cullis_acentric", this);
        }

        public FloatColumnBuilder enterRCullis() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "R_cullis", this);
        }

        public FloatColumnBuilder enterRKrautCentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "R_kraut_centric", this);
        }

        public FloatColumnBuilder enterRKrautAcentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "R_kraut_acentric", this);
        }

        public FloatColumnBuilder enterRKraut() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "R_kraut", this);
        }

        public FloatColumnBuilder enterLocCentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "loc_centric", this);
        }

        public FloatColumnBuilder enterLocAcentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "loc_acentric", this);
        }

        public FloatColumnBuilder enterLoc() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "loc", this);
        }

        public FloatColumnBuilder enterPowerCentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "power_centric", this);
        }

        public FloatColumnBuilder enterPowerAcentric() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "power_acentric", this);
        }

        public FloatColumnBuilder enterPower() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "power", this);
        }

    }

    public static class PdbxPhasingMADSetSiteBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_phasing_MAD_set_site";

        public PdbxPhasingMADSetSiteBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterAtomTypeSymbol() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_type_symbol", this);
        }

        public FloatColumnBuilder enterCartnX() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Cartn_x", this);
        }

        public FloatColumnBuilder enterCartnY() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Cartn_y", this);
        }

        public FloatColumnBuilder enterCartnZ() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Cartn_z", this);
        }

        public FloatColumnBuilder enterCartnXEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Cartn_x_esd", this);
        }

        public FloatColumnBuilder enterCartnYEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Cartn_y_esd", this);
        }

        public FloatColumnBuilder enterCartnZEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Cartn_z_esd", this);
        }

        public FloatColumnBuilder enterFractX() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "fract_x", this);
        }

        public FloatColumnBuilder enterFractY() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "fract_y", this);
        }

        public FloatColumnBuilder enterFractZ() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "fract_z", this);
        }

        public FloatColumnBuilder enterFractXEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "fract_x_esd", this);
        }

        public FloatColumnBuilder enterFractYEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "fract_y_esd", this);
        }

        public FloatColumnBuilder enterFractZEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "fract_z_esd", this);
        }

        public FloatColumnBuilder enterBIso() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "b_iso", this);
        }

        public FloatColumnBuilder enterBIsoEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "b_iso_esd", this);
        }

        public FloatColumnBuilder enterOccupancy() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "occupancy", this);
        }

        public FloatColumnBuilder enterOccupancyEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "occupancy_esd", this);
        }

        public StrColumnBuilder enterSetId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "set_id", this);
        }

        public FloatColumnBuilder enterOccupancyIso() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "occupancy_iso", this);
        }

    }

    public static class PdbxPhasingMRBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_phasing_MR";

        public PdbxPhasingMRBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterMethodRotation() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "method_rotation", this);
        }

        public FloatColumnBuilder enterDResHighRotation() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "d_res_high_rotation", this);
        }

        public FloatColumnBuilder enterDResLowRotation() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "d_res_low_rotation", this);
        }

        public FloatColumnBuilder enterSigmaFRotation() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "sigma_F_rotation", this);
        }

        public FloatColumnBuilder enterSigmaIRotation() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "sigma_I_rotation", this);
        }

        public FloatColumnBuilder enterReflnsPercentRotation() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "reflns_percent_rotation", this);
        }

        public StrColumnBuilder enterMethodTranslation() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "method_translation", this);
        }

        public FloatColumnBuilder enterDResHighTranslation() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "d_res_high_translation", this);
        }

        public FloatColumnBuilder enterDResLowTranslation() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "d_res_low_translation", this);
        }

        public FloatColumnBuilder enterSigmaFTranslation() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "sigma_F_translation", this);
        }

        public FloatColumnBuilder enterSigmaITranslation() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "sigma_I_translation", this);
        }

        public FloatColumnBuilder enterReflnsPercentTranslation() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "reflns_percent_translation", this);
        }

        public FloatColumnBuilder enterCorrelationCoeffIoToIc() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "correlation_coeff_Io_to_Ic", this);
        }

        public FloatColumnBuilder enterCorrelationCoeffFoToFc() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "correlation_coeff_Fo_to_Fc", this);
        }

        public FloatColumnBuilder enterRFactor() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "R_factor", this);
        }

        public FloatColumnBuilder enterRRigidBody() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "R_rigid_body", this);
        }

        public FloatColumnBuilder enterPacking() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "packing", this);
        }

        public StrColumnBuilder enterModelDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "model_details", this);
        }

        public StrColumnBuilder enterNativeSetId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "native_set_id", this);
        }

        public FloatColumnBuilder enterDResHighFit() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "d_res_high_fit", this);
        }

        public FloatColumnBuilder enterDResLowFit() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "d_res_low_fit", this);
        }

        public FloatColumnBuilder enterZscoreRotation() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "zscore_rotation", this);
        }

        public FloatColumnBuilder enterLLGainRotation() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "LL_gain_rotation", this);
        }

        public FloatColumnBuilder enterZscoreTranslation() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "zscore_translation", this);
        }

        public FloatColumnBuilder enterLLGainTranslation() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "LL_gain_translation", this);
        }

    }

    public static class PdbxRefineComponentBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_refine_component";

        public PdbxRefineComponentBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterLabelAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_alt_id", this);
        }

        public StrColumnBuilder enterLabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_asym_id", this);
        }

        public StrColumnBuilder enterLabelCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_comp_id", this);
        }

        public IntColumnBuilder enterLabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "label_seq_id", this);
        }

        public StrColumnBuilder enterAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id", this);
        }

        public StrColumnBuilder enterAuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_comp_id", this);
        }

        public StrColumnBuilder enterAuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id", this);
        }

        public StrColumnBuilder enterPDBInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "PDB_ins_code", this);
        }

        public FloatColumnBuilder enterBIso() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "B_iso", this);
        }

        public FloatColumnBuilder enterBIsoMainChain() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "B_iso_main_chain", this);
        }

        public FloatColumnBuilder enterBIsoSideChain() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "B_iso_side_chain", this);
        }

        public FloatColumnBuilder enterShift() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "shift", this);
        }

        public FloatColumnBuilder enterShiftSideChain() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "shift_side_chain", this);
        }

        public FloatColumnBuilder enterShiftMainChain() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "shift_main_chain", this);
        }

        public FloatColumnBuilder enterCorrelation() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "correlation", this);
        }

        public FloatColumnBuilder enterCorrelationSideChain() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "correlation_side_chain", this);
        }

        public FloatColumnBuilder enterCorrelationMainChain() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "correlation_main_chain", this);
        }

        public FloatColumnBuilder enterRealSpaceR() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "real_space_R", this);
        }

        public FloatColumnBuilder enterRealSpaceRSideChain() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "real_space_R_side_chain", this);
        }

        public FloatColumnBuilder enterRealSpaceRMainChain() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "real_space_R_main_chain", this);
        }

        public FloatColumnBuilder enterConnect() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "connect", this);
        }

        public FloatColumnBuilder enterDensityIndex() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "density_index", this);
        }

        public FloatColumnBuilder enterDensityIndexMainChain() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "density_index_main_chain", this);
        }

        public FloatColumnBuilder enterDensityIndexSideChain() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "density_index_side_chain", this);
        }

        public FloatColumnBuilder enterDensityRatio() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "density_ratio", this);
        }

        public FloatColumnBuilder enterDensityRatioMainChain() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "density_ratio_main_chain", this);
        }

        public FloatColumnBuilder enterDensityRatioSideChain() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "density_ratio_side_chain", this);
        }

    }

    public static class PdbxEntityProdProtocolBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_entity_prod_protocol";

        public PdbxEntityProdProtocolBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public StrColumnBuilder enterProtocol() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "protocol", this);
        }

        public StrColumnBuilder enterProtocolType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "protocol_type", this);
        }

    }

    public static class PdbxEntitySrcGenProdOtherBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_entity_src_gen_prod_other";

        public PdbxEntitySrcGenProdOtherBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public IntColumnBuilder enterStepId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "step_id", this);
        }

        public IntColumnBuilder enterNextStepId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "next_step_id", this);
        }

        public StrColumnBuilder enterEndConstructId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "end_construct_id", this);
        }

        public StrColumnBuilder enterRobotId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "robot_id", this);
        }

        public StrColumnBuilder enterDate() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date", this);
        }

        public StrColumnBuilder enterProcessName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "process_name", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class PdbxEntitySrcGenProdOtherParameterBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_entity_src_gen_prod_other_parameter";

        public PdbxEntitySrcGenProdOtherParameterBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public IntColumnBuilder enterStepId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "step_id", this);
        }

        public StrColumnBuilder enterParameter() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "parameter", this);
        }

        public StrColumnBuilder enterValue() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "value", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class PdbxEntitySrcGenProdPcrBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_entity_src_gen_prod_pcr";

        public PdbxEntitySrcGenProdPcrBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public IntColumnBuilder enterStepId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "step_id", this);
        }

        public IntColumnBuilder enterNextStepId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "next_step_id", this);
        }

        public StrColumnBuilder enterEndConstructId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "end_construct_id", this);
        }

        public StrColumnBuilder enterRobotId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "robot_id", this);
        }

        public StrColumnBuilder enterDate() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date", this);
        }

        public StrColumnBuilder enterForwardPrimerId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "forward_primer_id", this);
        }

        public StrColumnBuilder enterReversePrimerId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "reverse_primer_id", this);
        }

        public StrColumnBuilder enterReactionDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "reaction_details", this);
        }

        public StrColumnBuilder enterPurificationDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "purification_details", this);
        }

        public StrColumnBuilder enterSummary() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "summary", this);
        }

    }

    public static class PdbxEntitySrcGenProdDigestBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_entity_src_gen_prod_digest";

        public PdbxEntitySrcGenProdDigestBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public IntColumnBuilder enterStepId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "step_id", this);
        }

        public IntColumnBuilder enterNextStepId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "next_step_id", this);
        }

        public StrColumnBuilder enterEndConstructId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "end_construct_id", this);
        }

        public StrColumnBuilder enterRobotId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "robot_id", this);
        }

        public StrColumnBuilder enterDate() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date", this);
        }

        public StrColumnBuilder enterRestrictionEnzyme1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "restriction_enzyme_1", this);
        }

        public StrColumnBuilder enterRestrictionEnzyme2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "restriction_enzyme_2", this);
        }

        public StrColumnBuilder enterPurificationDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "purification_details", this);
        }

        public StrColumnBuilder enterSummary() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "summary", this);
        }

    }

    public static class PdbxEntitySrcGenCloneBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_entity_src_gen_clone";

        public PdbxEntitySrcGenCloneBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public IntColumnBuilder enterStepId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "step_id", this);
        }

        public IntColumnBuilder enterNextStepId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "next_step_id", this);
        }

        public StrColumnBuilder enterEndConstructId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "end_construct_id", this);
        }

        public StrColumnBuilder enterRobotId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "robot_id", this);
        }

        public StrColumnBuilder enterDate() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date", this);
        }

        public StrColumnBuilder enterGeneInsertMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "gene_insert_method", this);
        }

        public StrColumnBuilder enterVectorName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "vector_name", this);
        }

        public StrColumnBuilder enterVectorDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "vector_details", this);
        }

        public StrColumnBuilder enterTransformationMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "transformation_method", this);
        }

        public StrColumnBuilder enterMarker() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "marker", this);
        }

        public StrColumnBuilder enterVerificationMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "verification_method", this);
        }

        public StrColumnBuilder enterPurificationDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "purification_details", this);
        }

        public StrColumnBuilder enterSummary() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "summary", this);
        }

    }

    public static class PdbxEntitySrcGenCloneLigationBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_entity_src_gen_clone_ligation";

        public PdbxEntitySrcGenCloneLigationBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public IntColumnBuilder enterStepId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "step_id", this);
        }

        public StrColumnBuilder enterCleavageEnzymes() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "cleavage_enzymes", this);
        }

        public StrColumnBuilder enterLigationEnzymes() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ligation_enzymes", this);
        }

        public FloatColumnBuilder enterTemperature() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "temperature", this);
        }

        public IntColumnBuilder enterTime() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "time", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class PdbxEntitySrcGenCloneRecombinationBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_entity_src_gen_clone_recombination";

        public PdbxEntitySrcGenCloneRecombinationBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public IntColumnBuilder enterStepId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "step_id", this);
        }

        public StrColumnBuilder enterSystem() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "system", this);
        }

        public StrColumnBuilder enterRecombinationEnzymes() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "recombination_enzymes", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class PdbxEntitySrcGenExpressBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_entity_src_gen_express";

        public PdbxEntitySrcGenExpressBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public IntColumnBuilder enterStepId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "step_id", this);
        }

        public IntColumnBuilder enterNextStepId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "next_step_id", this);
        }

        public StrColumnBuilder enterEndConstructId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "end_construct_id", this);
        }

        public StrColumnBuilder enterRobotId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "robot_id", this);
        }

        public StrColumnBuilder enterDate() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date", this);
        }

        public StrColumnBuilder enterPromoterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "promoter_type", this);
        }

        public StrColumnBuilder enterPlasmidId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "plasmid_id", this);
        }

        public StrColumnBuilder enterVectorType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "vector_type", this);
        }

        public StrColumnBuilder enterNTerminalSeqTag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "N_terminal_seq_tag", this);
        }

        public StrColumnBuilder enterCTerminalSeqTag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "C_terminal_seq_tag", this);
        }

        public StrColumnBuilder enterHostOrgScientificName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "host_org_scientific_name", this);
        }

        public StrColumnBuilder enterHostOrgCommonName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "host_org_common_name", this);
        }

        public StrColumnBuilder enterHostOrgVariant() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "host_org_variant", this);
        }

        public StrColumnBuilder enterHostOrgStrain() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "host_org_strain", this);
        }

        public StrColumnBuilder enterHostOrgTissue() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "host_org_tissue", this);
        }

        public StrColumnBuilder enterHostOrgCultureCollection() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "host_org_culture_collection", this);
        }

        public StrColumnBuilder enterHostOrgCellLine() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "host_org_cell_line", this);
        }

        public StrColumnBuilder enterHostOrgTaxId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "host_org_tax_id", this);
        }

        public StrColumnBuilder enterHostOrgDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "host_org_details", this);
        }

        public StrColumnBuilder enterCultureBaseMedia() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "culture_base_media", this);
        }

        public StrColumnBuilder enterCultureAdditives() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "culture_additives", this);
        }

        public FloatColumnBuilder enterCultureVolume() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "culture_volume", this);
        }

        public FloatColumnBuilder enterCultureTime() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "culture_time", this);
        }

        public FloatColumnBuilder enterCultureTemperature() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "culture_temperature", this);
        }

        public StrColumnBuilder enterInducer() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "inducer", this);
        }

        public FloatColumnBuilder enterInducerConcentration() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "inducer_concentration", this);
        }

        public StrColumnBuilder enterInductionDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "induction_details", this);
        }

        public FloatColumnBuilder enterMultiplicityOfInfection() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "multiplicity_of_infection", this);
        }

        public FloatColumnBuilder enterInductionTimepoint() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "induction_timepoint", this);
        }

        public FloatColumnBuilder enterInductionTemperature() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "induction_temperature", this);
        }

        public StrColumnBuilder enterHarvestingDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "harvesting_details", this);
        }

        public StrColumnBuilder enterStorageDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "storage_details", this);
        }

        public StrColumnBuilder enterSummary() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "summary", this);
        }

    }

    public static class PdbxEntitySrcGenExpressTimepointBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_entity_src_gen_express_timepoint";

        public PdbxEntitySrcGenExpressTimepointBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public IntColumnBuilder enterStepId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "step_id", this);
        }

        public IntColumnBuilder enterSerial() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "serial", this);
        }

        public IntColumnBuilder enterOD() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "OD", this);
        }

        public IntColumnBuilder enterTime() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "time", this);
        }

    }

    public static class PdbxEntitySrcGenLysisBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_entity_src_gen_lysis";

        public PdbxEntitySrcGenLysisBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public IntColumnBuilder enterStepId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "step_id", this);
        }

        public IntColumnBuilder enterNextStepId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "next_step_id", this);
        }

        public StrColumnBuilder enterEndConstructId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "end_construct_id", this);
        }

        public StrColumnBuilder enterRobotId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "robot_id", this);
        }

        public StrColumnBuilder enterDate() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date", this);
        }

        public StrColumnBuilder enterMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "method", this);
        }

        public StrColumnBuilder enterBufferId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "buffer_id", this);
        }

        public FloatColumnBuilder enterBufferVolume() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "buffer_volume", this);
        }

        public FloatColumnBuilder enterTemperature() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "temperature", this);
        }

        public FloatColumnBuilder enterTime() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "time", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class PdbxEntitySrcGenRefoldBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_entity_src_gen_refold";

        public PdbxEntitySrcGenRefoldBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public IntColumnBuilder enterStepId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "step_id", this);
        }

        public IntColumnBuilder enterNextStepId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "next_step_id", this);
        }

        public StrColumnBuilder enterEndConstructId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "end_construct_id", this);
        }

        public StrColumnBuilder enterRobotId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "robot_id", this);
        }

        public StrColumnBuilder enterDate() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date", this);
        }

        public StrColumnBuilder enterDenatureBufferId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "denature_buffer_id", this);
        }

        public StrColumnBuilder enterRefoldBufferId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "refold_buffer_id", this);
        }

        public FloatColumnBuilder enterTemperature() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "temperature", this);
        }

        public FloatColumnBuilder enterTime() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "time", this);
        }

        public StrColumnBuilder enterStorageBufferId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "storage_buffer_id", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class PdbxEntitySrcGenProteolysisBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_entity_src_gen_proteolysis";

        public PdbxEntitySrcGenProteolysisBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public IntColumnBuilder enterStepId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "step_id", this);
        }

        public IntColumnBuilder enterNextStepId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "next_step_id", this);
        }

        public StrColumnBuilder enterEndConstructId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "end_construct_id", this);
        }

        public StrColumnBuilder enterRobotId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "robot_id", this);
        }

        public StrColumnBuilder enterDate() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterProtease() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "protease", this);
        }

        public FloatColumnBuilder enterProteinProteaseRatio() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "protein_protease_ratio", this);
        }

        public StrColumnBuilder enterCleavageBufferId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "cleavage_buffer_id", this);
        }

        public FloatColumnBuilder enterCleavageTemperature() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "cleavage_temperature", this);
        }

        public FloatColumnBuilder enterCleavageTime() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "cleavage_time", this);
        }

    }

    public static class PdbxEntitySrcGenChromBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_entity_src_gen_chrom";

        public PdbxEntitySrcGenChromBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public IntColumnBuilder enterStepId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "step_id", this);
        }

        public IntColumnBuilder enterNextStepId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "next_step_id", this);
        }

        public StrColumnBuilder enterEndConstructId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "end_construct_id", this);
        }

        public StrColumnBuilder enterRobotId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "robot_id", this);
        }

        public StrColumnBuilder enterDate() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date", this);
        }

        public StrColumnBuilder enterColumnType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "column_type", this);
        }

        public FloatColumnBuilder enterColumnVolume() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "column_volume", this);
        }

        public FloatColumnBuilder enterColumnTemperature() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "column_temperature", this);
        }

        public StrColumnBuilder enterEquilibrationBufferId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "equilibration_buffer_id", this);
        }

        public FloatColumnBuilder enterFlowRate() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "flow_rate", this);
        }

        public StrColumnBuilder enterElutionBufferId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "elution_buffer_id", this);
        }

        public StrColumnBuilder enterElutionProtocol() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "elution_protocol", this);
        }

        public StrColumnBuilder enterSamplePrepDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "sample_prep_details", this);
        }

        public FloatColumnBuilder enterSampleVolume() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "sample_volume", this);
        }

        public FloatColumnBuilder enterSampleConcentration() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "sample_concentration", this);
        }

        public StrColumnBuilder enterSampleConcMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "sample_conc_method", this);
        }

        public FloatColumnBuilder enterVolumePooledFractions() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "volume_pooled_fractions", this);
        }

        public FloatColumnBuilder enterYieldPooledFractions() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "yield_pooled_fractions", this);
        }

        public StrColumnBuilder enterYieldMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "yield_method", this);
        }

        public StrColumnBuilder enterPostTreatment() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "post_treatment", this);
        }

    }

    public static class PdbxEntitySrcGenFractBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_entity_src_gen_fract";

        public PdbxEntitySrcGenFractBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public IntColumnBuilder enterStepId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "step_id", this);
        }

        public IntColumnBuilder enterNextStepId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "next_step_id", this);
        }

        public StrColumnBuilder enterEndConstructId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "end_construct_id", this);
        }

        public StrColumnBuilder enterRobotId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "robot_id", this);
        }

        public StrColumnBuilder enterDate() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date", this);
        }

        public StrColumnBuilder enterMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "method", this);
        }

        public FloatColumnBuilder enterTemperature() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "temperature", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterProteinLocation() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "protein_location", this);
        }

        public FloatColumnBuilder enterProteinVolume() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "protein_volume", this);
        }

        public FloatColumnBuilder enterProteinYield() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "protein_yield", this);
        }

        public StrColumnBuilder enterProteinYieldMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "protein_yield_method", this);
        }

    }

    public static class PdbxEntitySrcGenPureBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_entity_src_gen_pure";

        public PdbxEntitySrcGenPureBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public IntColumnBuilder enterStepId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "step_id", this);
        }

        public StrColumnBuilder enterProductId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "product_id", this);
        }

        public StrColumnBuilder enterDate() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date", this);
        }

        public StrColumnBuilder enterConcDeviceId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "conc_device_id", this);
        }

        public StrColumnBuilder enterConcDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "conc_details", this);
        }

        public StrColumnBuilder enterConcAssayMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "conc_assay_method", this);
        }

        public FloatColumnBuilder enterProteinConcentration() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "protein_concentration", this);
        }

        public FloatColumnBuilder enterProteinYield() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "protein_yield", this);
        }

        public FloatColumnBuilder enterProteinPurity() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "protein_purity", this);
        }

        public IntColumnBuilder enterProteinOligomericState() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "protein_oligomeric_state", this);
        }

        public StrColumnBuilder enterStorageBufferId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "storage_buffer_id", this);
        }

        public FloatColumnBuilder enterStorageTemperature() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "storage_temperature", this);
        }

        public StrColumnBuilder enterSummary() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "summary", this);
        }

    }

    public static class PdbxEntitySrcGenCharacterBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_entity_src_gen_character";

        public PdbxEntitySrcGenCharacterBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public IntColumnBuilder enterStepId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "step_id", this);
        }

        public StrColumnBuilder enterRobotId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "robot_id", this);
        }

        public StrColumnBuilder enterDate() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date", this);
        }

        public StrColumnBuilder enterMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "method", this);
        }

        public StrColumnBuilder enterResult() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "result", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class PdbxConstructBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_construct";

        public PdbxConstructBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public StrColumnBuilder enterOrganisation() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "organisation", this);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public StrColumnBuilder enterRobotId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "robot_id", this);
        }

        public StrColumnBuilder enterDate() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterClazz() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "class", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public StrColumnBuilder enterSeq() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "seq", this);
        }

    }

    public static class PdbxConstructFeatureBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_construct_feature";

        public PdbxConstructFeatureBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterConstructId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "construct_id", this);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public IntColumnBuilder enterStartSeq() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "start_seq", this);
        }

        public IntColumnBuilder enterEndSeq() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "end_seq", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class PdbxRobotSystemBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_robot_system";

        public PdbxRobotSystemBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterModel() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "model", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public StrColumnBuilder enterManufacturer() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "manufacturer", this);
        }

    }

    public static class PdbxBufferBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_buffer";

        public PdbxBufferBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class PdbxBufferComponentsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_buffer_components";

        public PdbxBufferComponentsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterBufferId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "buffer_id", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public StrColumnBuilder enterVolume() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "volume", this);
        }

        public StrColumnBuilder enterConc() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "conc", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterConcUnits() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "conc_units", this);
        }

        public StrColumnBuilder enterIsotopicLabeling() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "isotopic_labeling", this);
        }

    }

    public static class PdbxDomainBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_domain";

        public PdbxDomainBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

    }

    public static class PdbxDomainRangeBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_domain_range";

        public PdbxDomainRangeBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterBegLabelAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "beg_label_alt_id", this);
        }

        public StrColumnBuilder enterBegLabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "beg_label_asym_id", this);
        }

        public StrColumnBuilder enterBegLabelCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "beg_label_comp_id", this);
        }

        public IntColumnBuilder enterBegLabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "beg_label_seq_id", this);
        }

        public StrColumnBuilder enterBegAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "beg_auth_asym_id", this);
        }

        public StrColumnBuilder enterBegAuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "beg_auth_comp_id", this);
        }

        public StrColumnBuilder enterBegAuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "beg_auth_seq_id", this);
        }

        public StrColumnBuilder enterDomainId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "domain_id", this);
        }

        public StrColumnBuilder enterEndLabelAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "end_label_alt_id", this);
        }

        public StrColumnBuilder enterEndLabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "end_label_asym_id", this);
        }

        public StrColumnBuilder enterEndLabelCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "end_label_comp_id", this);
        }

        public IntColumnBuilder enterEndLabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "end_label_seq_id", this);
        }

        public StrColumnBuilder enterEndAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "end_auth_asym_id", this);
        }

        public StrColumnBuilder enterEndAuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "end_auth_comp_id", this);
        }

        public StrColumnBuilder enterEndAuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "end_auth_seq_id", this);
        }

    }

    public static class PdbxSequenceRangeBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_sequence_range";

        public PdbxSequenceRangeBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterBegLabelAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "beg_label_alt_id", this);
        }

        public StrColumnBuilder enterBegLabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "beg_label_asym_id", this);
        }

        public StrColumnBuilder enterBegLabelCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "beg_label_comp_id", this);
        }

        public IntColumnBuilder enterBegLabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "beg_label_seq_id", this);
        }

        public StrColumnBuilder enterBegAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "beg_auth_asym_id", this);
        }

        public StrColumnBuilder enterBegAuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "beg_auth_comp_id", this);
        }

        public StrColumnBuilder enterBegAuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "beg_auth_seq_id", this);
        }

        public StrColumnBuilder enterSeqRangeId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "seq_range_id", this);
        }

        public StrColumnBuilder enterEndLabelAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "end_label_alt_id", this);
        }

        public StrColumnBuilder enterEndLabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "end_label_asym_id", this);
        }

        public StrColumnBuilder enterEndLabelCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "end_label_comp_id", this);
        }

        public IntColumnBuilder enterEndLabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "end_label_seq_id", this);
        }

        public StrColumnBuilder enterEndAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "end_auth_asym_id", this);
        }

        public StrColumnBuilder enterEndAuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "end_auth_comp_id", this);
        }

        public StrColumnBuilder enterEndAuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "end_auth_seq_id", this);
        }

    }

    public static class PdbxFeatureEntryBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_feature_entry";

        public PdbxFeatureEntryBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterFeatureName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "feature_name", this);
        }

        public StrColumnBuilder enterFeatureType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "feature_type", this);
        }

        public StrColumnBuilder enterFeature() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "feature", this);
        }

        public StrColumnBuilder enterFeatureIdentifier() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "feature_identifier", this);
        }

        public StrColumnBuilder enterFeatureAssignedBy() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "feature_assigned_by", this);
        }

        public StrColumnBuilder enterFeatureCitationId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "feature_citation_id", this);
        }

        public StrColumnBuilder enterFeatureSoftwareId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "feature_software_id", this);
        }

    }

    public static class PdbxFeatureDomainBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_feature_domain";

        public PdbxFeatureDomainBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterDomainId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "domain_id", this);
        }

        public StrColumnBuilder enterFeatureName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "feature_name", this);
        }

        public StrColumnBuilder enterFeatureType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "feature_type", this);
        }

        public StrColumnBuilder enterFeature() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "feature", this);
        }

        public StrColumnBuilder enterFeatureIdentifier() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "feature_identifier", this);
        }

        public StrColumnBuilder enterFeatureAssignedBy() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "feature_assigned_by", this);
        }

        public StrColumnBuilder enterFeatureCitationId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "feature_citation_id", this);
        }

        public StrColumnBuilder enterFeatureSoftwareId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "feature_software_id", this);
        }

    }

    public static class PdbxFeatureSequenceRangeBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_feature_sequence_range";

        public PdbxFeatureSequenceRangeBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterSeqRangeId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "seq_range_id", this);
        }

        public StrColumnBuilder enterFeatureName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "feature_name", this);
        }

        public StrColumnBuilder enterFeatureType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "feature_type", this);
        }

        public StrColumnBuilder enterFeature() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "feature", this);
        }

        public StrColumnBuilder enterFeatureIdentifier() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "feature_identifier", this);
        }

        public StrColumnBuilder enterFeatureAssignedBy() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "feature_assigned_by", this);
        }

        public StrColumnBuilder enterFeatureCitationId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "feature_citation_id", this);
        }

        public StrColumnBuilder enterFeatureSoftwareId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "feature_software_id", this);
        }

    }

    public static class PdbxFeatureAssemblyBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_feature_assembly";

        public PdbxFeatureAssemblyBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterAssemblyId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "assembly_id", this);
        }

        public StrColumnBuilder enterFeatureName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "feature_name", this);
        }

        public StrColumnBuilder enterFeatureType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "feature_type", this);
        }

        public StrColumnBuilder enterFeature() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "feature", this);
        }

        public StrColumnBuilder enterFeatureIdentifier() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "feature_identifier", this);
        }

        public StrColumnBuilder enterFeatureAssignedBy() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "feature_assigned_by", this);
        }

        public StrColumnBuilder enterFeatureCitationId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "feature_citation_id", this);
        }

        public StrColumnBuilder enterFeatureSoftwareId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "feature_software_id", this);
        }

    }

    public static class PdbxFeatureMonomerBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_feature_monomer";

        public PdbxFeatureMonomerBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterFeatureName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "feature_name", this);
        }

        public StrColumnBuilder enterFeatureType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "feature_type", this);
        }

        public StrColumnBuilder enterFeature() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "feature", this);
        }

        public StrColumnBuilder enterFeatureIdentifier() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "feature_identifier", this);
        }

        public StrColumnBuilder enterFeatureAssignedBy() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "feature_assigned_by", this);
        }

        public StrColumnBuilder enterFeatureCitationId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "feature_citation_id", this);
        }

        public StrColumnBuilder enterFeatureSoftwareId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "feature_software_id", this);
        }

        public StrColumnBuilder enterLabelAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_alt_id", this);
        }

        public StrColumnBuilder enterLabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_asym_id", this);
        }

        public StrColumnBuilder enterLabelCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_comp_id", this);
        }

        public IntColumnBuilder enterLabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "label_seq_id", this);
        }

        public StrColumnBuilder enterAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id", this);
        }

        public StrColumnBuilder enterAuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_comp_id", this);
        }

        public StrColumnBuilder enterAuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id", this);
        }

    }

    public static class PdbxExptlPdBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_exptl_pd";

        public PdbxExptlPdBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public FloatColumnBuilder enterSpecPreparationPH() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "spec_preparation_pH", this);
        }

        public StrColumnBuilder enterSpecPreparationPHRange() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "spec_preparation_pH_range", this);
        }

        public StrColumnBuilder enterSpecPreparation() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "spec_preparation", this);
        }

    }

    public static class PdbxReflnsTwinBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_reflns_twin";

        public PdbxReflnsTwinBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDiffrnId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "diffrn_id", this);
        }

        public StrColumnBuilder enterCrystalId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "crystal_id", this);
        }

        public StrColumnBuilder enterDomainId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "domain_id", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public StrColumnBuilder enterOperator() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "operator", this);
        }

        public FloatColumnBuilder enterFraction() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "fraction", this);
        }

        public FloatColumnBuilder enterMeanI2OverMeanISquare() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "mean_I2_over_mean_I_square", this);
        }

        public FloatColumnBuilder enterMeanFSquareOverMeanF2() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "mean_F_square_over_mean_F2", this);
        }

    }

    public static class PdbxStructInfoBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_struct_info";

        public PdbxStructInfoBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public StrColumnBuilder enterValue() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "value", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class PdbxReRefinementBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_re_refinement";

        public PdbxReRefinementBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterCitationId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "citation_id", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class PdbxStructAssemblyPropBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_struct_assembly_prop";

        public PdbxStructAssemblyPropBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterBiolId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "biol_id", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public StrColumnBuilder enterValue() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "value", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class PdbxStructRefSeqFeatureBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_struct_ref_seq_feature";

        public PdbxStructRefSeqFeatureBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterFeatureId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "feature_id", this);
        }

        public StrColumnBuilder enterAlignId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "align_id", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterPdbStrandId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdb_strand_id", this);
        }

        public StrColumnBuilder enterAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "asym_id", this);
        }

        public StrColumnBuilder enterBegAuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "beg_auth_seq_id", this);
        }

        public StrColumnBuilder enterEndAuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "end_auth_seq_id", this);
        }

        public StrColumnBuilder enterBegSeqNum() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "beg_seq_num", this);
        }

        public StrColumnBuilder enterEndSeqNum() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "end_seq_num", this);
        }

        public StrColumnBuilder enterBegAuthMonId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "beg_auth_mon_id", this);
        }

        public StrColumnBuilder enterEndAuthMonId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "end_auth_mon_id", this);
        }

        public StrColumnBuilder enterBegPdbInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "beg_pdb_ins_code", this);
        }

        public StrColumnBuilder enterEndPdbInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "end_pdb_ins_code", this);
        }

    }

    public static class PdbxStructRefSeqFeaturePropBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_struct_ref_seq_feature_prop";

        public PdbxStructRefSeqFeaturePropBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterFeatureId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "feature_id", this);
        }

        public IntColumnBuilder enterPropertyId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "property_id", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public StrColumnBuilder enterValue() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "value", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterBegDbMonId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "beg_db_mon_id", this);
        }

        public StrColumnBuilder enterEndDbMonId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "end_db_mon_id", this);
        }

        public IntColumnBuilder enterBegDbSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "beg_db_seq_id", this);
        }

        public IntColumnBuilder enterEndDbSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "end_db_seq_id", this);
        }

    }

    public static class PdbxStructChemCompDiagnosticsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_struct_chem_comp_diagnostics";

        public PdbxStructChemCompDiagnosticsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public StrColumnBuilder enterPdbStrandId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdb_strand_id", this);
        }

        public StrColumnBuilder enterAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "asym_id", this);
        }

        public StrColumnBuilder enterAuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id", this);
        }

        public IntColumnBuilder enterSeqNum() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "seq_num", this);
        }

        public StrColumnBuilder enterAuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_comp_id", this);
        }

        public StrColumnBuilder enterPdbInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdb_ins_code", this);
        }

        public IntColumnBuilder enterOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal", this);
        }

    }

    public static class PdbxChemCompSynonymsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_chem_comp_synonyms";

        public PdbxChemCompSynonymsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public StrColumnBuilder enterCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id", this);
        }

        public StrColumnBuilder enterProvenance() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "provenance", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

    }

    public static class PdbxChemCompFeatureBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_chem_comp_feature";

        public PdbxChemCompFeatureBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public StrColumnBuilder enterSupport() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "support", this);
        }

        public StrColumnBuilder enterValue() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "value", this);
        }

        public StrColumnBuilder enterSource() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "source", this);
        }

    }

    public static class PdbxCoordinateModelBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_coordinate_model";

        public PdbxCoordinateModelBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "asym_id", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

    }

    public static class PdbxStructChemCompFeatureBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_struct_chem_comp_feature";

        public PdbxStructChemCompFeatureBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public StrColumnBuilder enterPdbStrandId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdb_strand_id", this);
        }

        public StrColumnBuilder enterAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "asym_id", this);
        }

        public StrColumnBuilder enterAuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id", this);
        }

        public IntColumnBuilder enterSeqNum() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "seq_num", this);
        }

        public StrColumnBuilder enterAuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_comp_id", this);
        }

        public StrColumnBuilder enterPdbInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdb_ins_code", this);
        }

        public IntColumnBuilder enterOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal", this);
        }

    }

    public static class PdbxDiffrnReflnsShellBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_diffrn_reflns_shell";

        public PdbxDiffrnReflnsShellBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDiffrnId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "diffrn_id", this);
        }

        public FloatColumnBuilder enterDResLow() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "d_res_low", this);
        }

        public FloatColumnBuilder enterDResHigh() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "d_res_high", this);
        }

        public FloatColumnBuilder enterPercentPossibleObs() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "percent_possible_obs", this);
        }

        public FloatColumnBuilder enterRmergeIObs() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Rmerge_I_obs", this);
        }

        public FloatColumnBuilder enterRsymValue() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Rsym_value", this);
        }

        public FloatColumnBuilder enterChiSquared() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "chi_squared", this);
        }

        public FloatColumnBuilder enterRedundancy() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "redundancy", this);
        }

        public IntColumnBuilder enterRejects() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "rejects", this);
        }

        public IntColumnBuilder enterNumberObs() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number_obs", this);
        }

    }

    public static class PdbxBondDistanceLimitsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_bond_distance_limits";

        public PdbxBondDistanceLimitsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterAtomType1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_type_1", this);
        }

        public StrColumnBuilder enterAtomType2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_type_2", this);
        }

        public FloatColumnBuilder enterLowerLimit() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "lower_limit", this);
        }

        public FloatColumnBuilder enterUpperLimit() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "upper_limit", this);
        }

    }

    public static class PdbxSolnScatterBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_soln_scatter";

        public PdbxSolnScatterBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public StrColumnBuilder enterSourceBeamline() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "source_beamline", this);
        }

        public StrColumnBuilder enterSourceBeamlineInstrument() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "source_beamline_instrument", this);
        }

        public StrColumnBuilder enterDetectorType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "detector_type", this);
        }

        public StrColumnBuilder enterDetectorSpecific() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "detector_specific", this);
        }

        public StrColumnBuilder enterSourceType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "source_type", this);
        }

        public StrColumnBuilder enterSourceClass() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "source_class", this);
        }

        public IntColumnBuilder enterNumTimeFrames() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_time_frames", this);
        }

        public FloatColumnBuilder enterSamplePH() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "sample_pH", this);
        }

        public FloatColumnBuilder enterTemperature() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "temperature", this);
        }

        public StrColumnBuilder enterConcentrationRange() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "concentration_range", this);
        }

        public StrColumnBuilder enterBufferName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "buffer_name", this);
        }

        public FloatColumnBuilder enterMeanGuinerRadius() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "mean_guiner_radius", this);
        }

        public FloatColumnBuilder enterMeanGuinerRadiusEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "mean_guiner_radius_esd", this);
        }

        public FloatColumnBuilder enterMinMeanCrossSectionalRadiiGyration() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "min_mean_cross_sectional_radii_gyration", this);
        }

        public FloatColumnBuilder enterMinMeanCrossSectionalRadiiGyrationEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "min_mean_cross_sectional_radii_gyration_esd", this);
        }

        public FloatColumnBuilder enterMaxMeanCrossSectionalRadiiGyration() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "max_mean_cross_sectional_radii_gyration", this);
        }

        public FloatColumnBuilder enterMaxMeanCrossSectionalRadiiGyrationEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "max_mean_cross_sectional_radii_gyration_esd", this);
        }

        public StrColumnBuilder enterProteinLength() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "protein_length", this);
        }

        public StrColumnBuilder enterDataReductionSoftwareList() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "data_reduction_software_list", this);
        }

        public StrColumnBuilder enterDataAnalysisSoftwareList() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "data_analysis_software_list", this);
        }

    }

    public static class PdbxSolnScatterModelBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_soln_scatter_model";

        public PdbxSolnScatterModelBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterScatterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "scatter_id", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "method", this);
        }

        public StrColumnBuilder enterSoftwareList() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "software_list", this);
        }

        public StrColumnBuilder enterSoftwareAuthorList() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "software_author_list", this);
        }

        public StrColumnBuilder enterEntryFittingList() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_fitting_list", this);
        }

        public IntColumnBuilder enterNumConformersCalculated() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_conformers_calculated", this);
        }

        public IntColumnBuilder enterNumConformersSubmitted() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_conformers_submitted", this);
        }

        public IntColumnBuilder enterRepresentativeConformer() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "representative_conformer", this);
        }

        public StrColumnBuilder enterConformerSelectionCriteria() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "conformer_selection_criteria", this);
        }

    }

    public static class PdbxChemCompDescriptorBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_chem_comp_descriptor";

        public PdbxChemCompDescriptorBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id", this);
        }

        public StrColumnBuilder enterDescriptor() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "descriptor", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public StrColumnBuilder enterProgram() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "program", this);
        }

        public StrColumnBuilder enterProgramVersion() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "program_version", this);
        }

        public IntColumnBuilder enterOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal", this);
        }

    }

    public static class PdbxChemCompIdentifierBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_chem_comp_identifier";

        public PdbxChemCompIdentifierBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id", this);
        }

        public StrColumnBuilder enterIdentifier() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "identifier", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public StrColumnBuilder enterProgram() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "program", this);
        }

        public StrColumnBuilder enterProgramVersion() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "program_version", this);
        }

        public IntColumnBuilder enterOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal", this);
        }

    }

    public static class PdbxChemCompImportBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_chem_comp_import";

        public PdbxChemCompImportBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id", this);
        }

    }

    public static class PdbxChemCompAtomEditBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_chem_comp_atom_edit";

        public PdbxChemCompAtomEditBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal", this);
        }

        public StrColumnBuilder enterCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id", this);
        }

        public StrColumnBuilder enterEditOp() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "edit_op", this);
        }

        public StrColumnBuilder enterAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id", this);
        }

        public StrColumnBuilder enterEditAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "edit_atom_id", this);
        }

        public StrColumnBuilder enterEditAtomValue() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "edit_atom_value", this);
        }

    }

    public static class PdbxChemCompBondEditBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_chem_comp_bond_edit";

        public PdbxChemCompBondEditBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal", this);
        }

        public StrColumnBuilder enterCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id", this);
        }

        public StrColumnBuilder enterEditOp() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "edit_op", this);
        }

        public StrColumnBuilder enterAtomId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id_1", this);
        }

        public StrColumnBuilder enterAtomId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id_2", this);
        }

        public StrColumnBuilder enterEditBondValue() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "edit_bond_value", this);
        }

    }

    public static class PdbxChemCompAuditBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_chem_comp_audit";

        public PdbxChemCompAuditBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id", this);
        }

        public StrColumnBuilder enterDate() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date", this);
        }

        public StrColumnBuilder enterAnnotator() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "annotator", this);
        }

        public StrColumnBuilder enterProcessingSite() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "processing_site", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterActionType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "action_type", this);
        }

    }

    public static class PdbxValidateCloseContactBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_validate_close_contact";

        public PdbxValidateCloseContactBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterPDBModelNum() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "PDB_model_num", this);
        }

        public StrColumnBuilder enterAuthAsymId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id_1", this);
        }

        public StrColumnBuilder enterAuthAtomId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_atom_id_1", this);
        }

        public StrColumnBuilder enterAuthCompId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_comp_id_1", this);
        }

        public StrColumnBuilder enterAuthSeqId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id_1", this);
        }

        public StrColumnBuilder enterAuthAtomId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_atom_id_2", this);
        }

        public StrColumnBuilder enterAuthAsymId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id_2", this);
        }

        public StrColumnBuilder enterAuthCompId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_comp_id_2", this);
        }

        public StrColumnBuilder enterAuthSeqId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id_2", this);
        }

        public StrColumnBuilder enterPDBInsCode1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "PDB_ins_code_1", this);
        }

        public StrColumnBuilder enterPDBInsCode2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "PDB_ins_code_2", this);
        }

        public StrColumnBuilder enterLabelAltId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_alt_id_1", this);
        }

        public StrColumnBuilder enterLabelAltId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_alt_id_2", this);
        }

        public StrColumnBuilder enterSymmAsXyz1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "symm_as_xyz_1", this);
        }

        public StrColumnBuilder enterSymmAsXyz2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "symm_as_xyz_2", this);
        }

        public FloatColumnBuilder enterDist() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "dist", this);
        }

    }

    public static class PdbxValidateSymmContactBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_validate_symm_contact";

        public PdbxValidateSymmContactBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterPDBModelNum() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "PDB_model_num", this);
        }

        public StrColumnBuilder enterAuthAsymId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id_1", this);
        }

        public StrColumnBuilder enterAuthAtomId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_atom_id_1", this);
        }

        public StrColumnBuilder enterAuthCompId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_comp_id_1", this);
        }

        public StrColumnBuilder enterAuthSeqId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id_1", this);
        }

        public StrColumnBuilder enterAuthAtomId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_atom_id_2", this);
        }

        public StrColumnBuilder enterAuthAsymId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id_2", this);
        }

        public StrColumnBuilder enterAuthCompId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_comp_id_2", this);
        }

        public StrColumnBuilder enterAuthSeqId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id_2", this);
        }

        public StrColumnBuilder enterPDBInsCode1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "PDB_ins_code_1", this);
        }

        public StrColumnBuilder enterPDBInsCode2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "PDB_ins_code_2", this);
        }

        public StrColumnBuilder enterLabelAltId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_alt_id_1", this);
        }

        public StrColumnBuilder enterLabelAltId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_alt_id_2", this);
        }

        public StrColumnBuilder enterSiteSymmetry1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "site_symmetry_1", this);
        }

        public StrColumnBuilder enterSiteSymmetry2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "site_symmetry_2", this);
        }

        public FloatColumnBuilder enterDist() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "dist", this);
        }

    }

    public static class PdbxValidateRmsdBondBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_validate_rmsd_bond";

        public PdbxValidateRmsdBondBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterPDBModelNum() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "PDB_model_num", this);
        }

        public StrColumnBuilder enterAuthAsymId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id_1", this);
        }

        public StrColumnBuilder enterAuthAtomId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_atom_id_1", this);
        }

        public StrColumnBuilder enterAuthCompId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_comp_id_1", this);
        }

        public StrColumnBuilder enterAuthSeqId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id_1", this);
        }

        public StrColumnBuilder enterAuthAtomId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_atom_id_2", this);
        }

        public StrColumnBuilder enterAuthAsymId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id_2", this);
        }

        public StrColumnBuilder enterAuthCompId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_comp_id_2", this);
        }

        public StrColumnBuilder enterAuthSeqId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id_2", this);
        }

        public StrColumnBuilder enterPDBInsCode1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "PDB_ins_code_1", this);
        }

        public StrColumnBuilder enterPDBInsCode2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "PDB_ins_code_2", this);
        }

        public StrColumnBuilder enterLabelAltId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_alt_id_1", this);
        }

        public StrColumnBuilder enterLabelAltId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_alt_id_2", this);
        }

        public FloatColumnBuilder enterBondDeviation() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "bond_deviation", this);
        }

        public FloatColumnBuilder enterBondValue() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "bond_value", this);
        }

        public FloatColumnBuilder enterBondTargetValue() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "bond_target_value", this);
        }

        public FloatColumnBuilder enterBondStandardDeviation() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "bond_standard_deviation", this);
        }

        public StrColumnBuilder enterLinkerFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "linker_flag", this);
        }

    }

    public static class PdbxValidateRmsdAngleBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_validate_rmsd_angle";

        public PdbxValidateRmsdAngleBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterPDBModelNum() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "PDB_model_num", this);
        }

        public StrColumnBuilder enterAuthAsymId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id_1", this);
        }

        public StrColumnBuilder enterAuthAtomId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_atom_id_1", this);
        }

        public StrColumnBuilder enterAuthCompId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_comp_id_1", this);
        }

        public StrColumnBuilder enterAuthSeqId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id_1", this);
        }

        public StrColumnBuilder enterAuthAtomId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_atom_id_2", this);
        }

        public StrColumnBuilder enterAuthAsymId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id_2", this);
        }

        public StrColumnBuilder enterAuthCompId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_comp_id_2", this);
        }

        public StrColumnBuilder enterAuthSeqId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id_2", this);
        }

        public StrColumnBuilder enterAuthAtomId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_atom_id_3", this);
        }

        public StrColumnBuilder enterAuthAsymId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id_3", this);
        }

        public StrColumnBuilder enterAuthCompId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_comp_id_3", this);
        }

        public StrColumnBuilder enterAuthSeqId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id_3", this);
        }

        public StrColumnBuilder enterPDBInsCode1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "PDB_ins_code_1", this);
        }

        public StrColumnBuilder enterPDBInsCode2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "PDB_ins_code_2", this);
        }

        public StrColumnBuilder enterPDBInsCode3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "PDB_ins_code_3", this);
        }

        public StrColumnBuilder enterLabelAltId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_alt_id_1", this);
        }

        public StrColumnBuilder enterLabelAltId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_alt_id_2", this);
        }

        public StrColumnBuilder enterLabelAltId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_alt_id_3", this);
        }

        public FloatColumnBuilder enterAngleDeviation() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "angle_deviation", this);
        }

        public FloatColumnBuilder enterAngleValue() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "angle_value", this);
        }

        public FloatColumnBuilder enterAngleTargetValue() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "angle_target_value", this);
        }

        public FloatColumnBuilder enterAngleStandardDeviation() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "angle_standard_deviation", this);
        }

        public StrColumnBuilder enterLinkerFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "linker_flag", this);
        }

    }

    public static class PdbxValidateTorsionBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_validate_torsion";

        public PdbxValidateTorsionBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterPDBModelNum() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "PDB_model_num", this);
        }

        public StrColumnBuilder enterAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id", this);
        }

        public StrColumnBuilder enterAuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_comp_id", this);
        }

        public StrColumnBuilder enterAuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id", this);
        }

        public StrColumnBuilder enterPDBInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "PDB_ins_code", this);
        }

        public StrColumnBuilder enterLabelAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_alt_id", this);
        }

        public FloatColumnBuilder enterPhi() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "phi", this);
        }

        public FloatColumnBuilder enterPsi() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "psi", this);
        }

    }

    public static class PdbxValidatePeptideOmegaBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_validate_peptide_omega";

        public PdbxValidatePeptideOmegaBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterPDBModelNum() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "PDB_model_num", this);
        }

        public StrColumnBuilder enterAuthAsymId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id_1", this);
        }

        public StrColumnBuilder enterAuthAsymId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id_2", this);
        }

        public StrColumnBuilder enterAuthCompId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_comp_id_1", this);
        }

        public StrColumnBuilder enterAuthCompId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_comp_id_2", this);
        }

        public StrColumnBuilder enterAuthSeqId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id_1", this);
        }

        public StrColumnBuilder enterAuthSeqId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id_2", this);
        }

        public StrColumnBuilder enterPDBInsCode1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "PDB_ins_code_1", this);
        }

        public StrColumnBuilder enterPDBInsCode2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "PDB_ins_code_2", this);
        }

        public StrColumnBuilder enterLabelAltId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_alt_id_1", this);
        }

        public StrColumnBuilder enterLabelAltId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_alt_id_2", this);
        }

        public FloatColumnBuilder enterOmega() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "omega", this);
        }

    }

    public static class PdbxValidateChiralBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_validate_chiral";

        public PdbxValidateChiralBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterPDBModelNum() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "PDB_model_num", this);
        }

        public StrColumnBuilder enterAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id", this);
        }

        public StrColumnBuilder enterAuthAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_atom_id", this);
        }

        public StrColumnBuilder enterLabelAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_alt_id", this);
        }

        public StrColumnBuilder enterAuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_comp_id", this);
        }

        public StrColumnBuilder enterAuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id", this);
        }

        public StrColumnBuilder enterPDBInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "PDB_ins_code", this);
        }

        public FloatColumnBuilder enterOmega() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "omega", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class PdbxValidatePlanesBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_validate_planes";

        public PdbxValidatePlanesBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterPDBModelNum() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "PDB_model_num", this);
        }

        public StrColumnBuilder enterAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id", this);
        }

        public StrColumnBuilder enterAuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_comp_id", this);
        }

        public StrColumnBuilder enterAuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id", this);
        }

        public StrColumnBuilder enterPDBInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "PDB_ins_code", this);
        }

        public StrColumnBuilder enterLabelAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_alt_id", this);
        }

        public FloatColumnBuilder enterRmsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rmsd", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

    }

    public static class PdbxValidatePlanesAtomBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_validate_planes_atom";

        public PdbxValidatePlanesAtomBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterPlaneId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "plane_id", this);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterPDBModelNum() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "PDB_model_num", this);
        }

        public StrColumnBuilder enterAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id", this);
        }

        public StrColumnBuilder enterAuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_comp_id", this);
        }

        public StrColumnBuilder enterAuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id", this);
        }

        public StrColumnBuilder enterPDBInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "PDB_ins_code", this);
        }

        public StrColumnBuilder enterAuthAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_atom_id", this);
        }

        public FloatColumnBuilder enterAtomDeviation() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "atom_deviation", this);
        }

    }

    public static class PdbxValidateMainChainPlaneBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_validate_main_chain_plane";

        public PdbxValidateMainChainPlaneBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterPDBModelNum() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "PDB_model_num", this);
        }

        public StrColumnBuilder enterAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id", this);
        }

        public StrColumnBuilder enterAuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_comp_id", this);
        }

        public StrColumnBuilder enterAuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id", this);
        }

        public StrColumnBuilder enterPDBInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "PDB_ins_code", this);
        }

        public StrColumnBuilder enterLabelAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_alt_id", this);
        }

        public FloatColumnBuilder enterImproperTorsionAngle() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "improper_torsion_angle", this);
        }

    }

    public static class PdbxStructConnAngleBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_struct_conn_angle";

        public PdbxStructConnAngleBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterPtnr1LabelAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr1_label_alt_id", this);
        }

        public StrColumnBuilder enterPtnr1LabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr1_label_asym_id", this);
        }

        public StrColumnBuilder enterPtnr1LabelAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr1_label_atom_id", this);
        }

        public StrColumnBuilder enterPtnr1LabelCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr1_label_comp_id", this);
        }

        public IntColumnBuilder enterPtnr1LabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ptnr1_label_seq_id", this);
        }

        public StrColumnBuilder enterPtnr1AuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr1_auth_asym_id", this);
        }

        public StrColumnBuilder enterPtnr1AuthAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr1_auth_atom_id", this);
        }

        public StrColumnBuilder enterPtnr1AuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr1_auth_comp_id", this);
        }

        public StrColumnBuilder enterPtnr1AuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr1_auth_seq_id", this);
        }

        public StrColumnBuilder enterPtnr1Symmetry() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr1_symmetry", this);
        }

        public StrColumnBuilder enterPtnr2LabelAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr2_label_alt_id", this);
        }

        public StrColumnBuilder enterPtnr2LabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr2_label_asym_id", this);
        }

        public StrColumnBuilder enterPtnr2LabelAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr2_label_atom_id", this);
        }

        public StrColumnBuilder enterPtnr2LabelCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr2_label_comp_id", this);
        }

        public IntColumnBuilder enterPtnr2LabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ptnr2_label_seq_id", this);
        }

        public StrColumnBuilder enterPtnr2AuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr2_auth_asym_id", this);
        }

        public StrColumnBuilder enterPtnr2AuthAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr2_auth_atom_id", this);
        }

        public StrColumnBuilder enterPtnr2AuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr2_auth_comp_id", this);
        }

        public StrColumnBuilder enterPtnr2AuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr2_auth_seq_id", this);
        }

        public StrColumnBuilder enterPtnr2Symmetry() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr2_symmetry", this);
        }

        public StrColumnBuilder enterPtnr1PDBInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr1_PDB_ins_code", this);
        }

        public StrColumnBuilder enterPtnr1AuthAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr1_auth_alt_id", this);
        }

        public StrColumnBuilder enterPtnr2PDBInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr2_PDB_ins_code", this);
        }

        public StrColumnBuilder enterPtnr2AuthAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr2_auth_alt_id", this);
        }

        public StrColumnBuilder enterPtnr3AuthAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr3_auth_alt_id", this);
        }

        public StrColumnBuilder enterPtnr3AuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr3_auth_asym_id", this);
        }

        public StrColumnBuilder enterPtnr3AuthAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr3_auth_atom_id", this);
        }

        public StrColumnBuilder enterPtnr3AuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr3_auth_comp_id", this);
        }

        public StrColumnBuilder enterPtnr3PDBInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr3_PDB_ins_code", this);
        }

        public StrColumnBuilder enterPtnr3AuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr3_auth_seq_id", this);
        }

        public StrColumnBuilder enterPtnr3LabelAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr3_label_alt_id", this);
        }

        public StrColumnBuilder enterPtnr3LabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr3_label_asym_id", this);
        }

        public StrColumnBuilder enterPtnr3LabelAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr3_label_atom_id", this);
        }

        public StrColumnBuilder enterPtnr3LabelCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr3_label_comp_id", this);
        }

        public IntColumnBuilder enterPtnr3LabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ptnr3_label_seq_id", this);
        }

        public StrColumnBuilder enterPtnr3Symmetry() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr3_symmetry", this);
        }

        public FloatColumnBuilder enterValue() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "value", this);
        }

        public FloatColumnBuilder enterValueEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "value_esd", this);
        }

    }

    public static class PdbxUnobsOrZeroOccResiduesBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_unobs_or_zero_occ_residues";

        public PdbxUnobsOrZeroOccResiduesBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterPolymerFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "polymer_flag", this);
        }

        public StrColumnBuilder enterOccupancyFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "occupancy_flag", this);
        }

        public IntColumnBuilder enterPDBModelNum() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "PDB_model_num", this);
        }

        public StrColumnBuilder enterAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id", this);
        }

        public StrColumnBuilder enterAuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_comp_id", this);
        }

        public StrColumnBuilder enterAuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id", this);
        }

        public StrColumnBuilder enterPDBInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "PDB_ins_code", this);
        }

        public StrColumnBuilder enterLabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_asym_id", this);
        }

        public StrColumnBuilder enterLabelCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_comp_id", this);
        }

        public IntColumnBuilder enterLabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "label_seq_id", this);
        }

    }

    public static class PdbxUnobsOrZeroOccAtomsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_unobs_or_zero_occ_atoms";

        public PdbxUnobsOrZeroOccAtomsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterPolymerFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "polymer_flag", this);
        }

        public StrColumnBuilder enterOccupancyFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "occupancy_flag", this);
        }

        public IntColumnBuilder enterPDBModelNum() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "PDB_model_num", this);
        }

        public StrColumnBuilder enterAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id", this);
        }

        public StrColumnBuilder enterAuthAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_atom_id", this);
        }

        public StrColumnBuilder enterAuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_comp_id", this);
        }

        public StrColumnBuilder enterAuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id", this);
        }

        public StrColumnBuilder enterPDBInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "PDB_ins_code", this);
        }

        public StrColumnBuilder enterLabelAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_alt_id", this);
        }

        public StrColumnBuilder enterLabelAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_atom_id", this);
        }

        public StrColumnBuilder enterLabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_asym_id", this);
        }

        public StrColumnBuilder enterLabelCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_comp_id", this);
        }

        public IntColumnBuilder enterLabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "label_seq_id", this);
        }

    }

    public static class PdbxEntryDetailsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_entry_details";

        public PdbxEntryDetailsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterNonpolymerDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "nonpolymer_details", this);
        }

        public StrColumnBuilder enterSequenceDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "sequence_details", this);
        }

        public StrColumnBuilder enterCompoundDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "compound_details", this);
        }

        public StrColumnBuilder enterSourceDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "source_details", this);
        }

        public StrColumnBuilder enterHasLigandOfInterest() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "has_ligand_of_interest", this);
        }

    }

    public static class PdbxStructModResidueBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_struct_mod_residue";

        public PdbxStructModResidueBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterPDBModelNum() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "PDB_model_num", this);
        }

        public StrColumnBuilder enterAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id", this);
        }

        public StrColumnBuilder enterAuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_comp_id", this);
        }

        public IntColumnBuilder enterAuthSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id", this);
        }

        public StrColumnBuilder enterPDBInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "PDB_ins_code", this);
        }

        public StrColumnBuilder enterLabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_asym_id", this);
        }

        public StrColumnBuilder enterLabelCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_comp_id", this);
        }

        public IntColumnBuilder enterLabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "label_seq_id", this);
        }

        public StrColumnBuilder enterParentCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "parent_comp_id", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class PdbxStructRefSeqInsertionBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_struct_ref_seq_insertion";

        public PdbxStructRefSeqInsertionBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id", this);
        }

        public StrColumnBuilder enterAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "asym_id", this);
        }

        public StrColumnBuilder enterAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id", this);
        }

        public StrColumnBuilder enterAuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id", this);
        }

        public IntColumnBuilder enterSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "seq_id", this);
        }

        public StrColumnBuilder enterPDBInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "PDB_ins_code", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterDbCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "db_code", this);
        }

        public StrColumnBuilder enterDbName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "db_name", this);
        }

    }

    public static class PdbxStructRefSeqDeletionBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_struct_ref_seq_deletion";

        public PdbxStructRefSeqDeletionBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "asym_id", this);
        }

        public StrColumnBuilder enterCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id", this);
        }

        public IntColumnBuilder enterDbSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "db_seq_id", this);
        }

        public StrColumnBuilder enterDbCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "db_code", this);
        }

        public StrColumnBuilder enterDbName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "db_name", this);
        }

    }

    public static class PdbxRemediationAtomSiteMappingBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_remediation_atom_site_mapping";

        public PdbxRemediationAtomSiteMappingBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterGroupPDB() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "group_PDB", this);
        }

        public StrColumnBuilder enterLabelAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_alt_id", this);
        }

        public StrColumnBuilder enterLabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_asym_id", this);
        }

        public StrColumnBuilder enterLabelAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_atom_id", this);
        }

        public StrColumnBuilder enterLabelCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_comp_id", this);
        }

        public IntColumnBuilder enterLabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "label_seq_id", this);
        }

        public IntColumnBuilder enterPdbxAlign() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_align", this);
        }

        public StrColumnBuilder enterPDBInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "PDB_ins_code", this);
        }

        public StrColumnBuilder enterPreAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pre_auth_asym_id", this);
        }

        public StrColumnBuilder enterPreAuthAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pre_auth_atom_id", this);
        }

        public StrColumnBuilder enterPreAuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pre_auth_comp_id", this);
        }

        public StrColumnBuilder enterPreAuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pre_auth_seq_id", this);
        }

        public StrColumnBuilder enterPrePDBInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pre_PDB_ins_code", this);
        }

        public StrColumnBuilder enterPreGroupPDB() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pre_group_PDB", this);
        }

        public StrColumnBuilder enterPreAuthAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pre_auth_alt_id", this);
        }

        public IntColumnBuilder enterPrePdbxAlign() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pre_pdbx_align", this);
        }

        public StrColumnBuilder enterAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id", this);
        }

        public StrColumnBuilder enterAuthAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_atom_id", this);
        }

        public StrColumnBuilder enterAuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_comp_id", this);
        }

        public StrColumnBuilder enterAuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id", this);
        }

        public StrColumnBuilder enterAuthAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_alt_id", this);
        }

        public FloatColumnBuilder enterOccupancy() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "occupancy", this);
        }

        public FloatColumnBuilder enterPreOccupancy() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pre_occupancy", this);
        }

    }

    public static class PdbxValidatePolymerLinkageBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_validate_polymer_linkage";

        public PdbxValidatePolymerLinkageBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterPDBModelNum() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "PDB_model_num", this);
        }

        public StrColumnBuilder enterAuthAsymId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id_1", this);
        }

        public StrColumnBuilder enterAuthAtomId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_atom_id_1", this);
        }

        public StrColumnBuilder enterAuthCompId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_comp_id_1", this);
        }

        public StrColumnBuilder enterAuthSeqId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id_1", this);
        }

        public StrColumnBuilder enterAuthAtomId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_atom_id_2", this);
        }

        public StrColumnBuilder enterAuthAsymId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id_2", this);
        }

        public StrColumnBuilder enterAuthCompId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_comp_id_2", this);
        }

        public StrColumnBuilder enterAuthSeqId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id_2", this);
        }

        public StrColumnBuilder enterPDBInsCode1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "PDB_ins_code_1", this);
        }

        public StrColumnBuilder enterPDBInsCode2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "PDB_ins_code_2", this);
        }

        public StrColumnBuilder enterLabelAltId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_alt_id_1", this);
        }

        public StrColumnBuilder enterLabelAltId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_alt_id_2", this);
        }

        public FloatColumnBuilder enterDist() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "dist", this);
        }

    }

    public static class PdbxHelicalSymmetryBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_helical_symmetry";

        public PdbxHelicalSymmetryBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public IntColumnBuilder enterNumberOfOperations() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number_of_operations", this);
        }

        public FloatColumnBuilder enterRotationPerNSubunits() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rotation_per_n_subunits", this);
        }

        public FloatColumnBuilder enterRisePerNSubunits() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rise_per_n_subunits", this);
        }

        public IntColumnBuilder enterNSubunitsDivisor() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "n_subunits_divisor", this);
        }

        public StrColumnBuilder enterDyadAxis() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "dyad_axis", this);
        }

        public IntColumnBuilder enterCircularSymmetry() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "circular_symmetry", this);
        }

    }

    public static class PdbxPointSymmetryBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_point_symmetry";

        public PdbxPointSymmetryBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterSchoenfliesSymbol() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "Schoenflies_symbol", this);
        }

        public IntColumnBuilder enterCircularSymmetry() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "circular_symmetry", this);
        }

        public StrColumnBuilder enterH_MNotation() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "H-M_notation", this);
        }

    }

    public static class PdbxStructEntityInstBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_struct_entity_inst";

        public PdbxStructEntityInstBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

    }

    public static class PdbxStructOperListBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_struct_oper_list";

        public PdbxStructOperListBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public StrColumnBuilder enterSymmetryOperation() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "symmetry_operation", this);
        }

        public FloatColumnBuilder enterMatrix11() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "matrix[1][1]", this);
        }

        public FloatColumnBuilder enterMatrix12() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "matrix[1][2]", this);
        }

        public FloatColumnBuilder enterMatrix13() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "matrix[1][3]", this);
        }

        public FloatColumnBuilder enterMatrix21() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "matrix[2][1]", this);
        }

        public FloatColumnBuilder enterMatrix22() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "matrix[2][2]", this);
        }

        public FloatColumnBuilder enterMatrix23() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "matrix[2][3]", this);
        }

        public FloatColumnBuilder enterMatrix31() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "matrix[3][1]", this);
        }

        public FloatColumnBuilder enterMatrix32() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "matrix[3][2]", this);
        }

        public FloatColumnBuilder enterMatrix33() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "matrix[3][3]", this);
        }

        public FloatColumnBuilder enterVector1() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "vector[1]", this);
        }

        public FloatColumnBuilder enterVector2() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "vector[2]", this);
        }

        public FloatColumnBuilder enterVector3() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "vector[3]", this);
        }

        public StrColumnBuilder enterFullMatrix() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "full_matrix", this);
        }

    }

    public static class PdbxStructAssemblyBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_struct_assembly";

        public PdbxStructAssemblyBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterMethodDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "method_details", this);
        }

        public StrColumnBuilder enterOligomericDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "oligomeric_details", this);
        }

        public IntColumnBuilder enterOligomericCount() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "oligomeric_count", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

    }

    public static class PdbxStructAssemblyGenBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_struct_assembly_gen";

        public PdbxStructAssemblyGenBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntityInstId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_inst_id", this);
        }

        public StrColumnBuilder enterAsymIdList() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "asym_id_list", this);
        }

        public StrColumnBuilder enterAuthAsymIdList() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id_list", this);
        }

        public StrColumnBuilder enterAssemblyId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "assembly_id", this);
        }

        public StrColumnBuilder enterOperExpression() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "oper_expression", this);
        }

    }

    public static class PdbxStructAsymGenBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_struct_asym_gen";

        public PdbxStructAsymGenBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntityInstId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_inst_id", this);
        }

        public StrColumnBuilder enterAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "asym_id", this);
        }

        public StrColumnBuilder enterOperExpression() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "oper_expression", this);
        }

    }

    public static class PdbxStructMsymGenBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_struct_msym_gen";

        public PdbxStructMsymGenBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntityInstId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_inst_id", this);
        }

        public StrColumnBuilder enterMsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "msym_id", this);
        }

        public StrColumnBuilder enterOperExpression() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "oper_expression", this);
        }

    }

    public static class PdbxStructLegacyOperListBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_struct_legacy_oper_list";

        public PdbxStructLegacyOperListBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public FloatColumnBuilder enterMatrix11() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "matrix[1][1]", this);
        }

        public FloatColumnBuilder enterMatrix12() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "matrix[1][2]", this);
        }

        public FloatColumnBuilder enterMatrix13() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "matrix[1][3]", this);
        }

        public FloatColumnBuilder enterMatrix21() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "matrix[2][1]", this);
        }

        public FloatColumnBuilder enterMatrix22() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "matrix[2][2]", this);
        }

        public FloatColumnBuilder enterMatrix23() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "matrix[2][3]", this);
        }

        public FloatColumnBuilder enterMatrix31() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "matrix[3][1]", this);
        }

        public FloatColumnBuilder enterMatrix32() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "matrix[3][2]", this);
        }

        public FloatColumnBuilder enterMatrix33() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "matrix[3][3]", this);
        }

        public FloatColumnBuilder enterVector1() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "vector[1]", this);
        }

        public FloatColumnBuilder enterVector2() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "vector[2]", this);
        }

        public FloatColumnBuilder enterVector3() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "vector[3]", this);
        }

    }

    public static class PdbxChemCompAtomFeatureBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_chem_comp_atom_feature";

        public PdbxChemCompAtomFeatureBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id", this);
        }

        public StrColumnBuilder enterAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id", this);
        }

        public StrColumnBuilder enterFeatureType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "feature_type", this);
        }

    }

    public static class PdbxReferenceMoleculeFamilyBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_reference_molecule_family";

        public PdbxReferenceMoleculeFamilyBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterFamilyPrdId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "family_prd_id", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public StrColumnBuilder enterReleaseStatus() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "release_status", this);
        }

        public StrColumnBuilder enterReplaces() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "replaces", this);
        }

        public StrColumnBuilder enterReplacedBy() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "replaced_by", this);
        }

    }

    public static class PdbxReferenceMoleculeListBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_reference_molecule_list";

        public PdbxReferenceMoleculeListBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterPrdId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "prd_id", this);
        }

        public StrColumnBuilder enterFamilyPrdId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "family_prd_id", this);
        }

    }

    public static class PdbxReferenceMoleculeBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_reference_molecule";

        public PdbxReferenceMoleculeBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterPrdId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "prd_id", this);
        }

        public FloatColumnBuilder enterFormulaWeight() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "formula_weight", this);
        }

        public StrColumnBuilder enterFormula() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "formula", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public StrColumnBuilder enterTypeEvidenceCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type_evidence_code", this);
        }

        public StrColumnBuilder enterClazz() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "class", this);
        }

        public StrColumnBuilder enterClassEvidenceCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "class_evidence_code", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public StrColumnBuilder enterRepresentAs() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "represent_as", this);
        }

        public StrColumnBuilder enterChemCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "chem_comp_id", this);
        }

        public StrColumnBuilder enterCompoundDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "compound_details", this);
        }

        public StrColumnBuilder enterDescription() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "description", this);
        }

        public StrColumnBuilder enterRepresentativePDBIdCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "representative_PDB_id_code", this);
        }

        public StrColumnBuilder enterReleaseStatus() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "release_status", this);
        }

        public StrColumnBuilder enterReplaces() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "replaces", this);
        }

        public StrColumnBuilder enterReplacedBy() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "replaced_by", this);
        }

    }

    public static class PdbxReferenceEntityListBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_reference_entity_list";

        public PdbxReferenceEntityListBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterPrdId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "prd_id", this);
        }

        public StrColumnBuilder enterRefEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ref_entity_id", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public IntColumnBuilder enterComponentId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "component_id", this);
        }

    }

    public static class PdbxReferenceEntityNonpolyBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_reference_entity_nonpoly";

        public PdbxReferenceEntityNonpolyBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterPrdId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "prd_id", this);
        }

        public StrColumnBuilder enterRefEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ref_entity_id", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public StrColumnBuilder enterChemCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "chem_comp_id", this);
        }

    }

    public static class PdbxReferenceEntityLinkBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_reference_entity_link";

        public PdbxReferenceEntityLinkBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterLinkId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "link_id", this);
        }

        public StrColumnBuilder enterPrdId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "prd_id", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterRefEntityId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ref_entity_id_1", this);
        }

        public StrColumnBuilder enterRefEntityId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ref_entity_id_2", this);
        }

        public IntColumnBuilder enterEntitySeqNum1() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "entity_seq_num_1", this);
        }

        public IntColumnBuilder enterEntitySeqNum2() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "entity_seq_num_2", this);
        }

        public StrColumnBuilder enterCompId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id_1", this);
        }

        public StrColumnBuilder enterCompId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id_2", this);
        }

        public StrColumnBuilder enterAtomId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id_1", this);
        }

        public StrColumnBuilder enterAtomId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id_2", this);
        }

        public StrColumnBuilder enterValueOrder() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "value_order", this);
        }

        public IntColumnBuilder enterComponent1() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "component_1", this);
        }

        public IntColumnBuilder enterComponent2() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "component_2", this);
        }

        public StrColumnBuilder enterNonpolyResNum1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "nonpoly_res_num_1", this);
        }

        public StrColumnBuilder enterNonpolyResNum2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "nonpoly_res_num_2", this);
        }

        public StrColumnBuilder enterLinkClass() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "link_class", this);
        }

    }

    public static class PdbxReferenceEntityPolyLinkBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_reference_entity_poly_link";

        public PdbxReferenceEntityPolyLinkBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterLinkId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "link_id", this);
        }

        public StrColumnBuilder enterPrdId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "prd_id", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterRefEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ref_entity_id", this);
        }

        public IntColumnBuilder enterComponentId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "component_id", this);
        }

        public IntColumnBuilder enterEntitySeqNum1() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "entity_seq_num_1", this);
        }

        public IntColumnBuilder enterEntitySeqNum2() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "entity_seq_num_2", this);
        }

        public StrColumnBuilder enterCompId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id_1", this);
        }

        public StrColumnBuilder enterCompId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id_2", this);
        }

        public StrColumnBuilder enterAtomId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id_1", this);
        }

        public StrColumnBuilder enterAtomId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id_2", this);
        }

        public StrColumnBuilder enterInsertCode1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "insert_code_1", this);
        }

        public StrColumnBuilder enterInsertCode2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "insert_code_2", this);
        }

        public StrColumnBuilder enterValueOrder() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "value_order", this);
        }

    }

    public static class PdbxReferenceEntityPolyBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_reference_entity_poly";

        public PdbxReferenceEntityPolyBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterPrdId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "prd_id", this);
        }

        public StrColumnBuilder enterRefEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ref_entity_id", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public StrColumnBuilder enterDbCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "db_code", this);
        }

        public StrColumnBuilder enterDbName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "db_name", this);
        }

    }

    public static class PdbxReferenceEntityPolySeqBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_reference_entity_poly_seq";

        public PdbxReferenceEntityPolySeqBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterPrdId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "prd_id", this);
        }

        public StrColumnBuilder enterRefEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ref_entity_id", this);
        }

        public StrColumnBuilder enterMonId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "mon_id", this);
        }

        public StrColumnBuilder enterParentMonId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "parent_mon_id", this);
        }

        public IntColumnBuilder enterNum() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num", this);
        }

        public StrColumnBuilder enterObserved() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "observed", this);
        }

        public StrColumnBuilder enterHetero() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "hetero", this);
        }

    }

    public static class PdbxReferenceEntitySequenceBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_reference_entity_sequence";

        public PdbxReferenceEntitySequenceBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterPrdId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "prd_id", this);
        }

        public StrColumnBuilder enterRefEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ref_entity_id", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public StrColumnBuilder enterNRPFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "NRP_flag", this);
        }

        public StrColumnBuilder enterOneLetterCodes() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "one_letter_codes", this);
        }

    }

    public static class PdbxReferenceEntitySrcNatBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_reference_entity_src_nat";

        public PdbxReferenceEntitySrcNatBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterPrdId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "prd_id", this);
        }

        public StrColumnBuilder enterRefEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ref_entity_id", this);
        }

        public IntColumnBuilder enterOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal", this);
        }

        public StrColumnBuilder enterOrganismScientific() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "organism_scientific", this);
        }

        public StrColumnBuilder enterStrain() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "strain", this);
        }

        public StrColumnBuilder enterTaxid() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "taxid", this);
        }

        public StrColumnBuilder enterAtcc() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atcc", this);
        }

        public StrColumnBuilder enterDbCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "db_code", this);
        }

        public StrColumnBuilder enterDbName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "db_name", this);
        }

        public StrColumnBuilder enterSource() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "source", this);
        }

        public StrColumnBuilder enterSourceId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "source_id", this);
        }

    }

    public static class PdbxReferenceMoleculeDetailsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_reference_molecule_details";

        public PdbxReferenceMoleculeDetailsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterFamilyPrdId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "family_prd_id", this);
        }

        public StrColumnBuilder enterPrdId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "prd_id", this);
        }

        public IntColumnBuilder enterOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal", this);
        }

        public StrColumnBuilder enterSource() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "source", this);
        }

        public StrColumnBuilder enterSourceId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "source_id", this);
        }

        public StrColumnBuilder enterText() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "text", this);
        }

    }

    public static class PdbxReferenceMoleculeSynonymsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_reference_molecule_synonyms";

        public PdbxReferenceMoleculeSynonymsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterFamilyPrdId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "family_prd_id", this);
        }

        public StrColumnBuilder enterPrdId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "prd_id", this);
        }

        public IntColumnBuilder enterOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public StrColumnBuilder enterSource() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "source", this);
        }

        public StrColumnBuilder enterChemCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "chem_comp_id", this);
        }

    }

    public static class PdbxReferenceEntitySubcomponentsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_reference_entity_subcomponents";

        public PdbxReferenceEntitySubcomponentsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterPrdId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "prd_id", this);
        }

        public StrColumnBuilder enterSeq() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "seq", this);
        }

        public StrColumnBuilder enterChemCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "chem_comp_id", this);
        }

    }

    public static class PdbxReferenceMoleculeAnnotationBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_reference_molecule_annotation";

        public PdbxReferenceMoleculeAnnotationBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterFamilyPrdId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "family_prd_id", this);
        }

        public StrColumnBuilder enterPrdId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "prd_id", this);
        }

        public IntColumnBuilder enterOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal", this);
        }

        public StrColumnBuilder enterText() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "text", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public StrColumnBuilder enterSupport() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "support", this);
        }

        public StrColumnBuilder enterSource() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "source", this);
        }

        public StrColumnBuilder enterChemCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "chem_comp_id", this);
        }

    }

    public static class PdbxReferenceMoleculeFeaturesBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_reference_molecule_features";

        public PdbxReferenceMoleculeFeaturesBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterFamilyPrdId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "family_prd_id", this);
        }

        public StrColumnBuilder enterPrdId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "prd_id", this);
        }

        public IntColumnBuilder enterOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal", this);
        }

        public IntColumnBuilder enterSourceOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "source_ordinal", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public StrColumnBuilder enterValue() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "value", this);
        }

        public StrColumnBuilder enterSource() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "source", this);
        }

        public StrColumnBuilder enterChemCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "chem_comp_id", this);
        }

    }

    public static class PdbxReferenceMoleculeRelatedStructuresBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_reference_molecule_related_structures";

        public PdbxReferenceMoleculeRelatedStructuresBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterFamilyPrdId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "family_prd_id", this);
        }

        public IntColumnBuilder enterOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal", this);
        }

        public StrColumnBuilder enterDbName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "db_name", this);
        }

        public StrColumnBuilder enterDbCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "db_code", this);
        }

        public StrColumnBuilder enterDbAccession() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "db_accession", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public StrColumnBuilder enterFormula() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "formula", this);
        }

        public StrColumnBuilder enterCitationId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "citation_id", this);
        }

    }

    public static class PdbxStructGroupListBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_struct_group_list";

        public PdbxStructGroupListBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterStructGroupId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "struct_group_id", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public StrColumnBuilder enterGroupEnumerationType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "group_enumeration_type", this);
        }

        public StrColumnBuilder enterDescription() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "description", this);
        }

        public StrColumnBuilder enterSelection() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "selection", this);
        }

        public StrColumnBuilder enterSelectionDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "selection_details", this);
        }

    }

    public static class PdbxStructGroupComponentsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_struct_group_components";

        public PdbxStructGroupComponentsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal", this);
        }

        public StrColumnBuilder enterStructGroupId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "struct_group_id", this);
        }

        public IntColumnBuilder enterPDBModelNum() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "PDB_model_num", this);
        }

        public StrColumnBuilder enterAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id", this);
        }

        public StrColumnBuilder enterAuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_comp_id", this);
        }

        public StrColumnBuilder enterAuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id", this);
        }

        public StrColumnBuilder enterPDBInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "PDB_ins_code", this);
        }

        public StrColumnBuilder enterLabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_asym_id", this);
        }

        public StrColumnBuilder enterLabelCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_comp_id", this);
        }

        public IntColumnBuilder enterLabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "label_seq_id", this);
        }

        public StrColumnBuilder enterLabelAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_alt_id", this);
        }

    }

    public static class PdbxStructGroupComponentRangeBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_struct_group_component_range";

        public PdbxStructGroupComponentRangeBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal", this);
        }

        public StrColumnBuilder enterStructGroupId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "struct_group_id", this);
        }

        public IntColumnBuilder enterPDBModelNum() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "PDB_model_num", this);
        }

        public StrColumnBuilder enterBegAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "beg_auth_asym_id", this);
        }

        public StrColumnBuilder enterBegAuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "beg_auth_comp_id", this);
        }

        public StrColumnBuilder enterBegAuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "beg_auth_seq_id", this);
        }

        public StrColumnBuilder enterBegPDBInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "beg_PDB_ins_code", this);
        }

        public StrColumnBuilder enterBegLabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "beg_label_asym_id", this);
        }

        public StrColumnBuilder enterBegLabelCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "beg_label_comp_id", this);
        }

        public IntColumnBuilder enterBegLabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "beg_label_seq_id", this);
        }

        public StrColumnBuilder enterBegLabelAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "beg_label_alt_id", this);
        }

        public StrColumnBuilder enterEndAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "end_auth_asym_id", this);
        }

        public StrColumnBuilder enterEndAuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "end_auth_comp_id", this);
        }

        public StrColumnBuilder enterEndAuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "end_auth_seq_id", this);
        }

        public StrColumnBuilder enterEndPDBInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "end_PDB_ins_code", this);
        }

        public StrColumnBuilder enterEndLabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "end_label_asym_id", this);
        }

        public StrColumnBuilder enterEndLabelCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "end_label_comp_id", this);
        }

        public IntColumnBuilder enterEndLabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "end_label_seq_id", this);
        }

        public StrColumnBuilder enterEndLabelAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "end_label_alt_id", this);
        }

    }

    public static class PdbxPrdAuditBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_prd_audit";

        public PdbxPrdAuditBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterPrdId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "prd_id", this);
        }

        public StrColumnBuilder enterDate() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date", this);
        }

        public StrColumnBuilder enterAnnotator() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "annotator", this);
        }

        public StrColumnBuilder enterProcessingSite() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "processing_site", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterActionType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "action_type", this);
        }

    }

    public static class PdbxFamilyPrdAuditBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_family_prd_audit";

        public PdbxFamilyPrdAuditBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterFamilyPrdId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "family_prd_id", this);
        }

        public StrColumnBuilder enterDate() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date", this);
        }

        public StrColumnBuilder enterAnnotator() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "annotator", this);
        }

        public StrColumnBuilder enterProcessingSite() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "processing_site", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterActionType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "action_type", this);
        }

    }

    public static class PdbxMoleculeBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_molecule";

        public PdbxMoleculeBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterPrdId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "prd_id", this);
        }

        public IntColumnBuilder enterInstanceId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "instance_id", this);
        }

        public StrColumnBuilder enterAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "asym_id", this);
        }

        public StrColumnBuilder enterLinkedEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "linked_entity_id", this);
        }

    }

    public static class PdbxMoleculeFeaturesBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_molecule_features";

        public PdbxMoleculeFeaturesBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterPrdId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "prd_id", this);
        }

        public StrColumnBuilder enterClazz() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "class", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class PdbxFamilyGroupIndexBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_family_group_index";

        public PdbxFamilyGroupIndexBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterFamilyPrdId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "family_prd_id", this);
        }

    }

    public static class PdbxDistantSolventAtomsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_distant_solvent_atoms";

        public PdbxDistantSolventAtomsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterPDBModelNum() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "PDB_model_num", this);
        }

        public StrColumnBuilder enterAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id", this);
        }

        public StrColumnBuilder enterAuthAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_atom_id", this);
        }

        public StrColumnBuilder enterAuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_comp_id", this);
        }

        public StrColumnBuilder enterAuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id", this);
        }

        public StrColumnBuilder enterPDBInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "PDB_ins_code", this);
        }

        public StrColumnBuilder enterLabelAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_alt_id", this);
        }

        public StrColumnBuilder enterLabelAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_atom_id", this);
        }

        public StrColumnBuilder enterLabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_asym_id", this);
        }

        public StrColumnBuilder enterLabelCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_comp_id", this);
        }

        public IntColumnBuilder enterLabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "label_seq_id", this);
        }

        public FloatColumnBuilder enterNeighborMacromoleculeDistance() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "neighbor_macromolecule_distance", this);
        }

        public FloatColumnBuilder enterNeighborLigandDistance() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "neighbor_ligand_distance", this);
        }

    }

    public static class PdbxStructSpecialSymmetryBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_struct_special_symmetry";

        public PdbxStructSpecialSymmetryBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterPDBModelNum() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "PDB_model_num", this);
        }

        public StrColumnBuilder enterAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id", this);
        }

        public StrColumnBuilder enterAuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_comp_id", this);
        }

        public StrColumnBuilder enterAuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id", this);
        }

        public StrColumnBuilder enterPDBInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "PDB_ins_code", this);
        }

        public StrColumnBuilder enterLabelAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_alt_id", this);
        }

        public StrColumnBuilder enterLabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_asym_id", this);
        }

        public StrColumnBuilder enterLabelCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_comp_id", this);
        }

        public IntColumnBuilder enterLabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "label_seq_id", this);
        }

    }

    public static class PdbxReferencePublicationListBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_reference_publication_list";

        public PdbxReferencePublicationListBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterPublicationAbbrev() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "publication_abbrev", this);
        }

        public StrColumnBuilder enterASTMCodeType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ASTM_code_type", this);
        }

        public StrColumnBuilder enterASTMCodeValue() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ASTM_code_value", this);
        }

        public StrColumnBuilder enterISSNCodeType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ISSN_code_type", this);
        }

        public StrColumnBuilder enterISSNCodeValue() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ISSN_code_value", this);
        }

        public StrColumnBuilder enterCountry() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "country", this);
        }

        public StrColumnBuilder enterStartYear() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "start_year", this);
        }

        public StrColumnBuilder enterEndYear() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "end_year", this);
        }

    }

    public static class PdbxNmrAssignedChemShiftListBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_nmr_assigned_chem_shift_list";

        public PdbxNmrAssignedChemShiftListBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public FloatColumnBuilder enterChemShift13CErr() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "chem_shift_13C_err", this);
        }

        public FloatColumnBuilder enterChemShift15NErr() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "chem_shift_15N_err", this);
        }

        public FloatColumnBuilder enterChemShift19FErr() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "chem_shift_19F_err", this);
        }

        public FloatColumnBuilder enterChemShift1HErr() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "chem_shift_1H_err", this);
        }

        public FloatColumnBuilder enterChemShift2HErr() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "chem_shift_2H_err", this);
        }

        public FloatColumnBuilder enterChemShift31PErr() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "chem_shift_31P_err", this);
        }

        public IntColumnBuilder enterChemShiftReferenceId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "chem_shift_reference_id", this);
        }

        public IntColumnBuilder enterConditionsId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "conditions_id", this);
        }

        public StrColumnBuilder enterDataFileName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "data_file_name", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterErrorDerivationMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "error_derivation_method", this);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterLabel() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label", this);
        }

        public StrColumnBuilder enterConditionsLabel() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "conditions_label", this);
        }

    }

    public static class PdbxNmrChemShiftExperimentBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_nmr_chem_shift_experiment";

        public PdbxNmrChemShiftExperimentBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterAssignedChemShiftListId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "assigned_chem_shift_list_id", this);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public IntColumnBuilder enterExperimentId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "experiment_id", this);
        }

        public StrColumnBuilder enterExperimentName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "experiment_name", this);
        }

        public StrColumnBuilder enterSampleState() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "sample_state", this);
        }

        public IntColumnBuilder enterSolutionId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "solution_id", this);
        }

    }

    public static class PdbxNmrChemShiftRefBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_nmr_chem_shift_ref";

        public PdbxNmrChemShiftRefBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterAtomGroup() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_group", this);
        }

        public IntColumnBuilder enterAtomIsotopeNumber() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "atom_isotope_number", this);
        }

        public StrColumnBuilder enterAtomType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_type", this);
        }

        public IntColumnBuilder enterChemShiftReferenceId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "chem_shift_reference_id", this);
        }

        public StrColumnBuilder enterChemShiftUnits() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "chem_shift_units", this);
        }

        public FloatColumnBuilder enterChemShiftVal() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "chem_shift_val", this);
        }

        public FloatColumnBuilder enterCorrectionVal() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "correction_val", this);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterExternalRefAxis() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "external_ref_axis", this);
        }

        public StrColumnBuilder enterExternalRefLoc() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "external_ref_loc", this);
        }

        public StrColumnBuilder enterExternalRefSampleGeometry() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "external_ref_sample_geometry", this);
        }

        public FloatColumnBuilder enterIndirectShiftRatio() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "indirect_shift_ratio", this);
        }

        public StrColumnBuilder enterMolCommonName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "mol_common_name", this);
        }

        public StrColumnBuilder enterRank() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "rank", this);
        }

        public StrColumnBuilder enterRefCorrectionType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ref_correction_type", this);
        }

        public StrColumnBuilder enterRefMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ref_method", this);
        }

        public StrColumnBuilder enterRefType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ref_type", this);
        }

        public StrColumnBuilder enterSolvent() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "solvent", this);
        }

    }

    public static class PdbxNmrChemShiftReferenceBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_nmr_chem_shift_reference";

        public PdbxNmrChemShiftReferenceBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterCarbonShiftsFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "carbon_shifts_flag", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterLabel() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label", this);
        }

        public StrColumnBuilder enterNitrogenShiftsFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "nitrogen_shifts_flag", this);
        }

        public StrColumnBuilder enterOtherShiftsFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "other_shifts_flag", this);
        }

        public StrColumnBuilder enterPhosphorusShiftsFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "phosphorus_shifts_flag", this);
        }

        public StrColumnBuilder enterProtonShiftsFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "proton_shifts_flag", this);
        }

    }

    public static class PdbxNmrChemShiftSoftwareBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_nmr_chem_shift_software";

        public PdbxNmrChemShiftSoftwareBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterAssignedChemShiftListId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "assigned_chem_shift_list_id", this);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public IntColumnBuilder enterSoftwareId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "software_id", this);
        }

        public StrColumnBuilder enterSoftwareLabel() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "software_label", this);
        }

    }

    public static class PdbxNmrConstraintFileBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_nmr_constraint_file";

        public PdbxNmrConstraintFileBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterConstraintFilename() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "constraint_filename", this);
        }

        public IntColumnBuilder enterConstraintNumber() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "constraint_number", this);
        }

        public StrColumnBuilder enterConstraintSubtype() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "constraint_subtype", this);
        }

        public StrColumnBuilder enterConstraintType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "constraint_type", this);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterSoftwareName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "software_name", this);
        }

        public IntColumnBuilder enterSoftwareOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "software_ordinal", this);
        }

    }

    public static class PdbxNmrSoftwareTaskBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_nmr_software_task";

        public PdbxNmrSoftwareTaskBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public IntColumnBuilder enterSoftwareOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "software_ordinal", this);
        }

        public StrColumnBuilder enterTask() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "task", this);
        }

    }

    public static class PdbxNmrSpectralDimBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_nmr_spectral_dim";

        public PdbxNmrSpectralDimBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterAtomType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_type", this);
        }

        public IntColumnBuilder enterAtomIsotopeNumber() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "atom_isotope_number", this);
        }

        public StrColumnBuilder enterSpectralRegion() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "spectral_region", this);
        }

        public IntColumnBuilder enterMagnetizationLinkageId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "magnetization_linkage_id", this);
        }

        public FloatColumnBuilder enterSweepWidth() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "sweep_width", this);
        }

        public StrColumnBuilder enterEncodingCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "encoding_code", this);
        }

        public IntColumnBuilder enterEncodedSourceDimensionId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "encoded_source_dimension_id", this);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public IntColumnBuilder enterSpectralPeakListId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "spectral_peak_list_id", this);
        }

        public StrColumnBuilder enterSweepWidthUnits() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "sweep_width_units", this);
        }

        public FloatColumnBuilder enterCenterFrequencyOffset() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "center_frequency_offset", this);
        }

        public StrColumnBuilder enterUnderSamplingType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "under_sampling_type", this);
        }

    }

    public static class PdbxNmrSpectralPeakListBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_nmr_spectral_peak_list";

        public PdbxNmrSpectralPeakListBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterDataFileName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "data_file_name", this);
        }

        public IntColumnBuilder enterSolutionId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "solution_id", this);
        }

        public IntColumnBuilder enterConditionsId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "conditions_id", this);
        }

        public IntColumnBuilder enterExperimentId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "experiment_id", this);
        }

        public IntColumnBuilder enterNumberOfSpectralDimensions() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number_of_spectral_dimensions", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterTextDataFormat() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "text_data_format", this);
        }

        public StrColumnBuilder enterLabel() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label", this);
        }

        public StrColumnBuilder enterConditionsLabel() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "conditions_label", this);
        }

    }

    public static class PdbxNmrSpectralPeakSoftwareBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_nmr_spectral_peak_software";

        public PdbxNmrSpectralPeakSoftwareBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterSoftwareId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "software_id", this);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public IntColumnBuilder enterSpectralPeakListId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "spectral_peak_list_id", this);
        }

    }

    public static class PdbxNmrSystematicChemShiftOffsetBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_nmr_systematic_chem_shift_offset";

        public PdbxNmrSystematicChemShiftOffsetBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public StrColumnBuilder enterAtomType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_type", this);
        }

        public IntColumnBuilder enterAtomIsotopeNumber() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "atom_isotope_number", this);
        }

        public FloatColumnBuilder enterVal() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "val", this);
        }

        public FloatColumnBuilder enterValErr() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "val_err", this);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public IntColumnBuilder enterAssignedChemShiftListId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "assigned_chem_shift_list_id", this);
        }

        public IntColumnBuilder enterOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal", this);
        }

    }

    public static class PdbxNmrUploadBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_nmr_upload";

        public PdbxNmrUploadBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterDataFileId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "data_file_id", this);
        }

        public StrColumnBuilder enterDataFileName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "data_file_name", this);
        }

        public StrColumnBuilder enterDataFileCategory() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "data_file_category", this);
        }

        public StrColumnBuilder enterDataFileSyntax() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "data_file_syntax", this);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

    }

    public static class PdbxChemCompSubcomponentStructConnBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_chem_comp_subcomponent_struct_conn";

        public PdbxChemCompSubcomponentStructConnBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public IntColumnBuilder enterEntityId1() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "entity_id_1", this);
        }

        public IntColumnBuilder enterEntityId2() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "entity_id_2", this);
        }

        public StrColumnBuilder enterAtomId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id_1", this);
        }

        public StrColumnBuilder enterAtomId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id_2", this);
        }

        public StrColumnBuilder enterCompId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id_1", this);
        }

        public StrColumnBuilder enterCompId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id_2", this);
        }

        public IntColumnBuilder enterSeqId1() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "seq_id_1", this);
        }

        public IntColumnBuilder enterSeqId2() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "seq_id_2", this);
        }

    }

    public static class PdbxChemCompSubcomponentEntityListBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_chem_comp_subcomponent_entity_list";

        public PdbxChemCompSubcomponentEntityListBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterParentCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "parent_comp_id", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public StrColumnBuilder enterClazz() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "class", this);
        }

    }

    public static class EntitySrcNatBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "entity_src_nat";

        public EntitySrcNatBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterCommonName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "common_name", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public StrColumnBuilder enterGenus() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "genus", this);
        }

        public StrColumnBuilder enterSpecies() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "species", this);
        }

        public StrColumnBuilder enterStrain() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "strain", this);
        }

        public StrColumnBuilder enterTissue() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "tissue", this);
        }

        public StrColumnBuilder enterTissueFraction() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "tissue_fraction", this);
        }

        public StrColumnBuilder enterPdbxOrganismScientific() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_organism_scientific", this);
        }

        public StrColumnBuilder enterPdbxSecretion() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_secretion", this);
        }

        public StrColumnBuilder enterPdbxFragment() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_fragment", this);
        }

        public StrColumnBuilder enterPdbxVariant() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_variant", this);
        }

        public StrColumnBuilder enterPdbxCellLine() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_cell_line", this);
        }

        public StrColumnBuilder enterPdbxAtcc() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_atcc", this);
        }

        public StrColumnBuilder enterPdbxCellularLocation() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_cellular_location", this);
        }

        public StrColumnBuilder enterPdbxOrgan() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_organ", this);
        }

        public StrColumnBuilder enterPdbxOrganelle() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_organelle", this);
        }

        public StrColumnBuilder enterPdbxCell() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_cell", this);
        }

        public StrColumnBuilder enterPdbxPlasmidName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_plasmid_name", this);
        }

        public StrColumnBuilder enterPdbxPlasmidDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_plasmid_details", this);
        }

        public StrColumnBuilder enterPdbxNcbiTaxonomyId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_ncbi_taxonomy_id", this);
        }

        public IntColumnBuilder enterPdbxSrcId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_src_id", this);
        }

        public StrColumnBuilder enterPdbxAltSourceFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_alt_source_flag", this);
        }

        public IntColumnBuilder enterPdbxBegSeqNum() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_beg_seq_num", this);
        }

        public IntColumnBuilder enterPdbxEndSeqNum() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_end_seq_num", this);
        }

        public StrColumnBuilder enterPdbxCultureCollection() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_culture_collection", this);
        }

    }

    public static class EntitySrcGenBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "entity_src_gen";

        public EntitySrcGenBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public StrColumnBuilder enterGeneSrcCommonName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "gene_src_common_name", this);
        }

        public StrColumnBuilder enterGeneSrcDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "gene_src_details", this);
        }

        public StrColumnBuilder enterGeneSrcGenus() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "gene_src_genus", this);
        }

        public StrColumnBuilder enterGeneSrcSpecies() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "gene_src_species", this);
        }

        public StrColumnBuilder enterGeneSrcStrain() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "gene_src_strain", this);
        }

        public StrColumnBuilder enterGeneSrcTissue() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "gene_src_tissue", this);
        }

        public StrColumnBuilder enterGeneSrcTissueFraction() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "gene_src_tissue_fraction", this);
        }

        public StrColumnBuilder enterHostOrgGenus() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "host_org_genus", this);
        }

        public StrColumnBuilder enterHostOrgSpecies() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "host_org_species", this);
        }

        public StrColumnBuilder enterPdbxGeneSrcFragment() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_gene_src_fragment", this);
        }

        public StrColumnBuilder enterPdbxGeneSrcGene() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_gene_src_gene", this);
        }

        public StrColumnBuilder enterPdbxGeneSrcScientificName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_gene_src_scientific_name", this);
        }

        public StrColumnBuilder enterPdbxGeneSrcVariant() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_gene_src_variant", this);
        }

        public StrColumnBuilder enterPdbxGeneSrcCellLine() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_gene_src_cell_line", this);
        }

        public StrColumnBuilder enterPdbxGeneSrcAtcc() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_gene_src_atcc", this);
        }

        public StrColumnBuilder enterPdbxGeneSrcOrgan() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_gene_src_organ", this);
        }

        public StrColumnBuilder enterPdbxGeneSrcOrganelle() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_gene_src_organelle", this);
        }

        public StrColumnBuilder enterPdbxGeneSrcPlasmid() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_gene_src_plasmid", this);
        }

        public StrColumnBuilder enterPdbxGeneSrcPlasmidName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_gene_src_plasmid_name", this);
        }

        public StrColumnBuilder enterPdbxGeneSrcCell() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_gene_src_cell", this);
        }

        public StrColumnBuilder enterPdbxGeneSrcCellularLocation() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_gene_src_cellular_location", this);
        }

        public StrColumnBuilder enterPdbxHostOrgGene() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_host_org_gene", this);
        }

        public StrColumnBuilder enterPdbxHostOrgOrgan() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_host_org_organ", this);
        }

        public StrColumnBuilder enterPdbxHostOrgOrganelle() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_host_org_organelle", this);
        }

        public StrColumnBuilder enterPdbxHostOrgCellularLocation() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_host_org_cellular_location", this);
        }

        public StrColumnBuilder enterPdbxHostOrgStrain() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_host_org_strain", this);
        }

        public StrColumnBuilder enterPdbxHostOrgTissueFraction() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_host_org_tissue_fraction", this);
        }

        public StrColumnBuilder enterPdbxDescription() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_description", this);
        }

        public StrColumnBuilder enterHostOrgCommonName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "host_org_common_name", this);
        }

        public StrColumnBuilder enterHostOrgDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "host_org_details", this);
        }

        public StrColumnBuilder enterHostOrgStrain() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "host_org_strain", this);
        }

        public StrColumnBuilder enterPlasmidDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "plasmid_details", this);
        }

        public StrColumnBuilder enterPlasmidName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "plasmid_name", this);
        }

        public StrColumnBuilder enterPdbxHostOrgVariant() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_host_org_variant", this);
        }

        public StrColumnBuilder enterPdbxHostOrgCellLine() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_host_org_cell_line", this);
        }

        public StrColumnBuilder enterPdbxHostOrgAtcc() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_host_org_atcc", this);
        }

        public StrColumnBuilder enterPdbxHostOrgCultureCollection() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_host_org_culture_collection", this);
        }

        public StrColumnBuilder enterPdbxHostOrgCell() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_host_org_cell", this);
        }

        public StrColumnBuilder enterPdbxHostOrgScientificName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_host_org_scientific_name", this);
        }

        public StrColumnBuilder enterPdbxHostOrgTissue() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_host_org_tissue", this);
        }

        public StrColumnBuilder enterPdbxHostOrgVector() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_host_org_vector", this);
        }

        public StrColumnBuilder enterPdbxHostOrgVectorType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_host_org_vector_type", this);
        }

        public StrColumnBuilder enterExpressionSystemId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "expression_system_id", this);
        }

        public StrColumnBuilder enterGeneSrcDevStage() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "gene_src_dev_stage", this);
        }

        public StrColumnBuilder enterStartConstructId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "start_construct_id", this);
        }

        public StrColumnBuilder enterPdbxGeneSrcNcbiTaxonomyId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_gene_src_ncbi_taxonomy_id", this);
        }

        public StrColumnBuilder enterPdbxHostOrgNcbiTaxonomyId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_host_org_ncbi_taxonomy_id", this);
        }

        public IntColumnBuilder enterPdbxSrcId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_src_id", this);
        }

        public StrColumnBuilder enterPdbxAltSourceFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_alt_source_flag", this);
        }

        public StrColumnBuilder enterPdbxSeqType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_seq_type", this);
        }

        public IntColumnBuilder enterPdbxBegSeqNum() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_beg_seq_num", this);
        }

        public IntColumnBuilder enterPdbxEndSeqNum() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_end_seq_num", this);
        }

        public StrColumnBuilder enterPdbxGeneSrcCultureCollection() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_gene_src_culture_collection", this);
        }

    }

    public static class PdbxEntitySrcSynBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_entity_src_syn";

        public PdbxEntitySrcSynBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterOrganismScientific() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "organism_scientific", this);
        }

        public StrColumnBuilder enterOrganismCommonName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "organism_common_name", this);
        }

        public StrColumnBuilder enterStrain() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "strain", this);
        }

        public StrColumnBuilder enterNcbiTaxonomyId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ncbi_taxonomy_id", this);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public IntColumnBuilder enterPdbxSrcId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_src_id", this);
        }

        public StrColumnBuilder enterPdbxAltSourceFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_alt_source_flag", this);
        }

        public IntColumnBuilder enterPdbxBegSeqNum() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_beg_seq_num", this);
        }

        public IntColumnBuilder enterPdbxEndSeqNum() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_end_seq_num", this);
        }

    }

    public static class PdbxEntityPolyCompLinkListBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_entity_poly_comp_link_list";

        public PdbxEntityPolyCompLinkListBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterLinkId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "link_id", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public IntColumnBuilder enterEntityCompNum1() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "entity_comp_num_1", this);
        }

        public IntColumnBuilder enterEntityCompNum2() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "entity_comp_num_2", this);
        }

        public StrColumnBuilder enterCompId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id_1", this);
        }

        public StrColumnBuilder enterCompId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id_2", this);
        }

        public StrColumnBuilder enterAtomId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id_1", this);
        }

        public StrColumnBuilder enterLeavingAtomId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "leaving_atom_id_1", this);
        }

        public StrColumnBuilder enterAtomStereoConfig1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_stereo_config_1", this);
        }

        public StrColumnBuilder enterAtomId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id_2", this);
        }

        public StrColumnBuilder enterLeavingAtomId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "leaving_atom_id_2", this);
        }

        public StrColumnBuilder enterAtomStereoConfig2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_stereo_config_2", this);
        }

        public StrColumnBuilder enterValueOrder() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "value_order", this);
        }

    }

    public static class PdbxLinkedEntityBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_linked_entity";

        public PdbxLinkedEntityBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterLinkedEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "linked_entity_id", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public StrColumnBuilder enterClazz() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "class", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public StrColumnBuilder enterDescription() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "description", this);
        }

        public StrColumnBuilder enterPrdId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "prd_id", this);
        }

    }

    public static class PdbxLinkedEntityInstanceListBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_linked_entity_instance_list";

        public PdbxLinkedEntityInstanceListBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterLinkedEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "linked_entity_id", this);
        }

        public IntColumnBuilder enterInstanceId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "instance_id", this);
        }

        public StrColumnBuilder enterAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "asym_id", this);
        }

    }

    public static class PdbxLinkedEntityListBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_linked_entity_list";

        public PdbxLinkedEntityListBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterLinkedEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "linked_entity_id", this);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public IntColumnBuilder enterComponentId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "component_id", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class PdbxLinkedEntityLinkListBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_linked_entity_link_list";

        public PdbxLinkedEntityLinkListBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterLinkId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "link_id", this);
        }

        public StrColumnBuilder enterLinkedEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "linked_entity_id", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterEntityId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id_1", this);
        }

        public StrColumnBuilder enterEntityId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id_2", this);
        }

        public IntColumnBuilder enterEntitySeqNum1() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "entity_seq_num_1", this);
        }

        public IntColumnBuilder enterEntitySeqNum2() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "entity_seq_num_2", this);
        }

        public StrColumnBuilder enterCompId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id_1", this);
        }

        public StrColumnBuilder enterCompId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id_2", this);
        }

        public StrColumnBuilder enterAtomId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id_1", this);
        }

        public StrColumnBuilder enterAtomId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id_2", this);
        }

        public StrColumnBuilder enterValueOrder() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "value_order", this);
        }

        public IntColumnBuilder enterComponent1() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "component_1", this);
        }

        public IntColumnBuilder enterComponent2() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "component_2", this);
        }

        public StrColumnBuilder enterLinkClass() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "link_class", this);
        }

    }

    public static class PdbxEntityBranchDescriptorBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_entity_branch_descriptor";

        public PdbxEntityBranchDescriptorBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public StrColumnBuilder enterDescriptor() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "descriptor", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public StrColumnBuilder enterProgram() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "program", this);
        }

        public StrColumnBuilder enterProgramVersion() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "program_version", this);
        }

        public IntColumnBuilder enterOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal", this);
        }

    }

    public static class PdbxReferenceLinkedEntityBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_reference_linked_entity";

        public PdbxReferenceLinkedEntityBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterClazz() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "class", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public StrColumnBuilder enterTaxonomyId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "taxonomy_id", this);
        }

        public StrColumnBuilder enterTaxonomyClass() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "taxonomy_class", this);
        }

        public StrColumnBuilder enterLinkToEntityType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "link_to_entity_type", this);
        }

        public StrColumnBuilder enterLinkToCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "link_to_comp_id", this);
        }

        public StrColumnBuilder enterLinkFromEntityType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "link_from_entity_type", this);
        }

    }

    public static class PdbxReferenceLinkedEntityCompListBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_reference_linked_entity_comp_list";

        public PdbxReferenceLinkedEntityCompListBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterLinkedEntityId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "linked_entity_id", this);
        }

        public IntColumnBuilder enterListId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "list_id", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public StrColumnBuilder enterCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id", this);
        }

    }

    public static class PdbxReferenceLinkedEntityCompLinkBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_reference_linked_entity_comp_link";

        public PdbxReferenceLinkedEntityCompLinkBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterLinkedEntityId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "linked_entity_id", this);
        }

        public IntColumnBuilder enterLinkId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "link_id", this);
        }

        public IntColumnBuilder enterListId1() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "list_id_1", this);
        }

        public IntColumnBuilder enterListId2() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "list_id_2", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterCompId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id_1", this);
        }

        public StrColumnBuilder enterCompId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id_2", this);
        }

        public StrColumnBuilder enterAtomId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id_1", this);
        }

        public StrColumnBuilder enterAtomId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id_2", this);
        }

        public StrColumnBuilder enterLeavingAtomId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "leaving_atom_id_1", this);
        }

        public StrColumnBuilder enterAtomStereoConfig1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_stereo_config_1", this);
        }

        public StrColumnBuilder enterLeavingAtomId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "leaving_atom_id_2", this);
        }

        public StrColumnBuilder enterAtomStereoConfig2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_stereo_config_2", this);
        }

        public StrColumnBuilder enterValueOrder() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "value_order", this);
        }

    }

    public static class PdbxReferenceLinkedEntityLinkBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_reference_linked_entity_link";

        public PdbxReferenceLinkedEntityLinkBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterLinkedEntityId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "linked_entity_id", this);
        }

        public IntColumnBuilder enterLinkId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "link_id", this);
        }

        public IntColumnBuilder enterFromListId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "from_list_id", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterToCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "to_comp_id", this);
        }

        public StrColumnBuilder enterFromCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "from_comp_id", this);
        }

        public StrColumnBuilder enterToAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "to_atom_id", this);
        }

        public StrColumnBuilder enterFromAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "from_atom_id", this);
        }

        public StrColumnBuilder enterFromLeavingAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "from_leaving_atom_id", this);
        }

        public StrColumnBuilder enterFromAtomStereoConfig() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "from_atom_stereo_config", this);
        }

        public StrColumnBuilder enterValueOrder() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "value_order", this);
        }

    }

    public static class PdbxRelatedExpDataSetBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_related_exp_data_set";

        public PdbxRelatedExpDataSetBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal", this);
        }

        public StrColumnBuilder enterDataReference() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "data_reference", this);
        }

        public StrColumnBuilder enterMetadataReference() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "metadata_reference", this);
        }

        public StrColumnBuilder enterDataSetType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "data_set_type", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class PdbxDatabaseStatusHistoryBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_database_status_history";

        public PdbxDatabaseStatusHistoryBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterOrdinal() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ordinal", this);
        }

        public StrColumnBuilder enterDateBegin() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date_begin", this);
        }

        public StrColumnBuilder enterDateEnd() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date_end", this);
        }

        public StrColumnBuilder enterStatusCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "status_code", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class EmAssemblyBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_assembly";

        public EmAssemblyBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public StrColumnBuilder enterAggregationState() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "aggregation_state", this);
        }

        public StrColumnBuilder enterComposition() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "composition", this);
        }

        public IntColumnBuilder enterNumComponents() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_components", this);
        }

        public FloatColumnBuilder enterMolWtExp() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "mol_wt_exp", this);
        }

        public FloatColumnBuilder enterMolWtTheo() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "mol_wt_theo", this);
        }

        public StrColumnBuilder enterMolWtMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "mol_wt_method", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class EmEntityAssemblyBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_entity_assembly";

        public EmEntityAssemblyBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterAssemblyId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "assembly_id", this);
        }

        public IntColumnBuilder enterParentId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "parent_id", this);
        }

        public StrColumnBuilder enterSource() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "source", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterGoId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "go_id", this);
        }

        public StrColumnBuilder enterIprId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ipr_id", this);
        }

        public StrColumnBuilder enterSynonym() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "synonym", this);
        }

        public IntColumnBuilder enterNumberOfCopies() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number_of_copies", this);
        }

        public StrColumnBuilder enterOligomericDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "oligomeric_details", this);
        }

        public StrColumnBuilder enterEntityIdList() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id_list", this);
        }

        public StrColumnBuilder enterEbiOrganismScientific() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ebi_organism_scientific", this);
        }

        public StrColumnBuilder enterEbiOrganismCommon() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ebi_organism_common", this);
        }

        public StrColumnBuilder enterEbiStrain() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ebi_strain", this);
        }

        public StrColumnBuilder enterEbiTissue() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ebi_tissue", this);
        }

        public StrColumnBuilder enterEbiCell() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ebi_cell", this);
        }

        public StrColumnBuilder enterEbiOrganelle() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ebi_organelle", this);
        }

        public StrColumnBuilder enterEbiCellularLocation() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ebi_cellular_location", this);
        }

        public StrColumnBuilder enterEbiEngineered() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ebi_engineered", this);
        }

        public StrColumnBuilder enterEbiExpressionSystem() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ebi_expression_system", this);
        }

        public StrColumnBuilder enterEbiExpressionSystemPlasmid() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ebi_expression_system_plasmid", this);
        }

        public StrColumnBuilder enterMutantFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "mutant_flag", this);
        }

        public StrColumnBuilder enterChimera() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "chimera", this);
        }

    }

    public static class EmVirusEntityBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_virus_entity";

        public EmVirusEntityBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterVirusHostCategory() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "virus_host_category", this);
        }

        public StrColumnBuilder enterVirusHostSpecies() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "virus_host_species", this);
        }

        public StrColumnBuilder enterVirusHostGrowthCell() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "virus_host_growth_cell", this);
        }

        public StrColumnBuilder enterVirusType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "virus_type", this);
        }

        public StrColumnBuilder enterVirusIsolate() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "virus_isolate", this);
        }

        public StrColumnBuilder enterIctvdbId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ictvdb_id", this);
        }

        public StrColumnBuilder enterEntityAssemblyId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_assembly_id", this);
        }

        public StrColumnBuilder enterEnveloped() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "enveloped", this);
        }

        public StrColumnBuilder enterEmpty() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "empty", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class EmSamplePreparationBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_sample_preparation";

        public EmSamplePreparationBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public FloatColumnBuilder enterPh() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ph", this);
        }

        public StrColumnBuilder enterBufferId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "buffer_id", this);
        }

        public FloatColumnBuilder enterSampleConcentration() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "sample_concentration", this);
        }

        public StrColumnBuilder enter_2dCrystalGrowId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "2d_crystal_grow_id", this);
        }

        public StrColumnBuilder enterSupportId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "support_id", this);
        }

        public StrColumnBuilder enterEntityAssemblyId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_assembly_id", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class EmSampleSupportBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_sample_support";

        public EmSampleSupportBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterFilmMaterial() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "film_material", this);
        }

        public StrColumnBuilder enterMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "method", this);
        }

        public StrColumnBuilder enterGridMaterial() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "grid_material", this);
        }

        public IntColumnBuilder enterGridMeshSize() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "grid_mesh_size", this);
        }

        public StrColumnBuilder enterGridType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "grid_type", this);
        }

        public StrColumnBuilder enterPretreatment() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pretreatment", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterSpecimenId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "specimen_id", this);
        }

        public StrColumnBuilder enterCitationId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "citation_id", this);
        }

    }

    public static class EmBufferBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_buffer";

        public EmBufferBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterSpecimenId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "specimen_id", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public FloatColumnBuilder enterPH() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pH", this);
        }

    }

    public static class EmVitrificationBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_vitrification";

        public EmVitrificationBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterSamplePreparationId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "sample_preparation_id", this);
        }

        public StrColumnBuilder enterSpecimenId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "specimen_id", this);
        }

        public StrColumnBuilder enterCryogenName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "cryogen_name", this);
        }

        public FloatColumnBuilder enterHumidity() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "humidity", this);
        }

        public FloatColumnBuilder enterTemp() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "temp", this);
        }

        public FloatColumnBuilder enterChamberTemperature() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "chamber_temperature", this);
        }

        public StrColumnBuilder enterInstrument() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "instrument", this);
        }

        public StrColumnBuilder enterMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "method", this);
        }

        public StrColumnBuilder enterTimeResolvedState() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "time_resolved_state", this);
        }

        public StrColumnBuilder enterCitationId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "citation_id", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class EmImagingBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_imaging";

        public EmImagingBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterAstigmatism() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "astigmatism", this);
        }

        public StrColumnBuilder enterElectronBeamTiltParams() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "electron_beam_tilt_params", this);
        }

        public FloatColumnBuilder enterResidualTilt() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "residual_tilt", this);
        }

        public StrColumnBuilder enterSampleSupportId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "sample_support_id", this);
        }

        public StrColumnBuilder enterDetectorId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "detector_id", this);
        }

        public StrColumnBuilder enterScansId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "scans_id", this);
        }

        public StrColumnBuilder enterMicroscopeId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "microscope_id", this);
        }

        public StrColumnBuilder enterMicroscopeModel() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "microscope_model", this);
        }

        public StrColumnBuilder enterSpecimenHolderType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "specimen_holder_type", this);
        }

        public StrColumnBuilder enterSpecimenHolderModel() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "specimen_holder_model", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterDate() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date", this);
        }

        public IntColumnBuilder enterAcceleratingVoltage() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "accelerating_voltage", this);
        }

        public StrColumnBuilder enterIlluminationMode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "illumination_mode", this);
        }

        public StrColumnBuilder enterMode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "mode", this);
        }

        public FloatColumnBuilder enterNominalCs() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "nominal_cs", this);
        }

        public FloatColumnBuilder enterNominalDefocusMin() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "nominal_defocus_min", this);
        }

        public FloatColumnBuilder enterNominalDefocusMax() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "nominal_defocus_max", this);
        }

        public FloatColumnBuilder enterCalibratedDefocusMin() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "calibrated_defocus_min", this);
        }

        public FloatColumnBuilder enterCalibratedDefocusMax() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "calibrated_defocus_max", this);
        }

        public FloatColumnBuilder enterTiltAngleMin() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "tilt_angle_min", this);
        }

        public FloatColumnBuilder enterTiltAngleMax() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "tilt_angle_max", this);
        }

        public IntColumnBuilder enterNominalMagnification() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "nominal_magnification", this);
        }

        public IntColumnBuilder enterCalibratedMagnification() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "calibrated_magnification", this);
        }

        public StrColumnBuilder enterElectronSource() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "electron_source", this);
        }

        public FloatColumnBuilder enterElectronDose() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "electron_dose", this);
        }

        public StrColumnBuilder enterEnergyFilter() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "energy_filter", this);
        }

        public StrColumnBuilder enterEnergyWindow() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "energy_window", this);
        }

        public StrColumnBuilder enterCitationId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "citation_id", this);
        }

        public FloatColumnBuilder enterTemperature() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "temperature", this);
        }

        public FloatColumnBuilder enterDetectorDistance() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "detector_distance", this);
        }

        public FloatColumnBuilder enterRecordingTemperatureMinimum() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "recording_temperature_minimum", this);
        }

        public FloatColumnBuilder enterRecordingTemperatureMaximum() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "recording_temperature_maximum", this);
        }

        public StrColumnBuilder enterAlignmentProcedure() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "alignment_procedure", this);
        }

        public FloatColumnBuilder enterC2ApertureDiameter() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "c2_aperture_diameter", this);
        }

        public StrColumnBuilder enterSpecimenId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "specimen_id", this);
        }

        public StrColumnBuilder enterCryogen() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "cryogen", this);
        }

    }

    public static class EmDetectorBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_detector";

        public EmDetectorBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public FloatColumnBuilder enterDetectiveQuantumEfficiency() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "detective_quantum_efficiency", this);
        }

        public StrColumnBuilder enterMode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "mode", this);
        }

    }

    public static class EmImageScansBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_image_scans";

        public EmImageScansBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterNumberDigitalImages() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number_digital_images", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterScannerModel() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "scanner_model", this);
        }

        public FloatColumnBuilder enterSamplingSize() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "sampling_size", this);
        }

        public FloatColumnBuilder enterOdRange() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "od_range", this);
        }

        public IntColumnBuilder enterQuantBitSize() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "quant_bit_size", this);
        }

        public StrColumnBuilder enterCitationId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "citation_id", this);
        }

        public IntColumnBuilder enterDimensionHeight() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "dimension_height", this);
        }

        public IntColumnBuilder enterDimensionWidth() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "dimension_width", this);
        }

        public IntColumnBuilder enterFramesPerImage() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "frames_per_image", this);
        }

        public StrColumnBuilder enterImageRecordingId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "image_recording_id", this);
        }

        public StrColumnBuilder enterUsedFramesPerImage() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "used_frames_per_image", this);
        }

    }

    public static class Em2dProjectionSelectionBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_2d_projection_selection";

        public Em2dProjectionSelectionBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterNumParticles() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_particles", this);
        }

        public StrColumnBuilder enterSoftwareName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "software_name", this);
        }

        public StrColumnBuilder enterMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "method", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterCitationId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "citation_id", this);
        }

    }

    public static class Em3dReconstructionBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_3d_reconstruction";

        public Em3dReconstructionBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "method", this);
        }

        public StrColumnBuilder enterAlgorithm() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "algorithm", this);
        }

        public StrColumnBuilder enterCitationId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "citation_id", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public FloatColumnBuilder enterResolution() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "resolution", this);
        }

        public StrColumnBuilder enterResolutionMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "resolution_method", this);
        }

        public StrColumnBuilder enterMagnificationCalibration() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "magnification_calibration", this);
        }

        public StrColumnBuilder enterCtfCorrectionMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ctf_correction_method", this);
        }

        public FloatColumnBuilder enterNominalPixelSize() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "nominal_pixel_size", this);
        }

        public FloatColumnBuilder enterActualPixelSize() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "actual_pixel_size", this);
        }

        public IntColumnBuilder enterNumParticles() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_particles", this);
        }

        public StrColumnBuilder enterEulerAnglesDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "euler_angles_details", this);
        }

        public IntColumnBuilder enterNumClassAverages() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_class_averages", this);
        }

        public StrColumnBuilder enterSoftware() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "software", this);
        }

        public StrColumnBuilder enterFscType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "fsc_type", this);
        }

        public StrColumnBuilder enterRefinementType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "refinement_type", this);
        }

        public StrColumnBuilder enterImageProcessingId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "image_processing_id", this);
        }

        public StrColumnBuilder enterSymmetryType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "symmetry_type", this);
        }

    }

    public static class Em3dFittingBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_3d_fitting";

        public Em3dFittingBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "method", this);
        }

        public StrColumnBuilder enterTargetCriteria() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "target_criteria", this);
        }

        public StrColumnBuilder enterSoftwareName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "software_name", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public FloatColumnBuilder enterOverallBValue() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "overall_b_value", this);
        }

        public StrColumnBuilder enterRefSpace() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ref_space", this);
        }

        public StrColumnBuilder enterRefProtocol() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ref_protocol", this);
        }

        public IntColumnBuilder enterInitialRefinementModelId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "initial_refinement_model_id", this);
        }

    }

    public static class Em3dFittingListBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_3d_fitting_list";

        public Em3dFittingListBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enter_3dFittingId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "3d_fitting_id", this);
        }

        public StrColumnBuilder enterPdbEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdb_entry_id", this);
        }

        public StrColumnBuilder enterPdbChainId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdb_chain_id", this);
        }

        public StrColumnBuilder enterPdbChainResidueRange() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdb_chain_residue_range", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterChainId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "chain_id", this);
        }

        public StrColumnBuilder enterChainResidueRange() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "chain_residue_range", this);
        }

        public StrColumnBuilder enterSourceName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "source_name", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public StrColumnBuilder enterAccessionCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "accession_code", this);
        }

    }

    public static class EmHelicalEntityBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_helical_entity";

        public EmHelicalEntityBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterEntityAssemblyId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_assembly_id", this);
        }

        public StrColumnBuilder enterImageProcessingId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "image_processing_id", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterDyad() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "dyad", this);
        }

        public StrColumnBuilder enterAxialSymmetry() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "axial_symmetry", this);
        }

        public FloatColumnBuilder enterAngularRotationPerSubunit() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "angular_rotation_per_subunit", this);
        }

        public FloatColumnBuilder enterAxialRisePerSubunit() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "axial_rise_per_subunit", this);
        }

        public StrColumnBuilder enterHand() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "hand", this);
        }

    }

    public static class EmExperimentBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_experiment";

        public EmExperimentBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterReconstructionMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "reconstruction_method", this);
        }

        public StrColumnBuilder enterAggregationState() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "aggregation_state", this);
        }

        public StrColumnBuilder enterSpecimenType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "specimen_type", this);
        }

        public StrColumnBuilder enterEntityAssemblyId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_assembly_id", this);
        }

    }

    public static class EmSingleParticleEntityBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_single_particle_entity";

        public EmSingleParticleEntityBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterSymmetryType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "symmetry_type", this);
        }

        public StrColumnBuilder enterImageProcessingId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "image_processing_id", this);
        }

        public StrColumnBuilder enterPointSymmetry() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "point_symmetry", this);
        }

    }

    public static class EmAdminBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_admin";

        public EmAdminBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterCurrentStatus() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "current_status", this);
        }

        public StrColumnBuilder enterDepositionDate() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "deposition_date", this);
        }

        public StrColumnBuilder enterDepositionSite() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "deposition_site", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterLastUpdate() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "last_update", this);
        }

        public StrColumnBuilder enterMapReleaseDate() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "map_release_date", this);
        }

        public StrColumnBuilder enterMapHoldDate() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "map_hold_date", this);
        }

        public StrColumnBuilder enterHeaderReleaseDate() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "header_release_date", this);
        }

        public StrColumnBuilder enterObsoletedDate() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "obsoleted_date", this);
        }

        public StrColumnBuilder enterReplaceExistingEntryFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "replace_existing_entry_flag", this);
        }

        public StrColumnBuilder enterTitle() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "title", this);
        }

    }

    public static class EmAuthorListBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_author_list";

        public EmAuthorListBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterAuthor() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "author", this);
        }

        public StrColumnBuilder enterIdentifierORCID() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "identifier_ORCID", this);
        }

        public IntColumnBuilder enterOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal", this);
        }

    }

    public static class EmDbReferenceBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_db_reference";

        public EmDbReferenceBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterAccessCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "access_code", this);
        }

        public StrColumnBuilder enterDbName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "db_name", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterRelationship() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "relationship", this);
        }

    }

    public static class EmDbReferenceAuxiliaryBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_db_reference_auxiliary";

        public EmDbReferenceAuxiliaryBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterLink() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "link", this);
        }

        public StrColumnBuilder enterLinkType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "link_type", this);
        }

    }

    public static class EmDepuiBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_depui";

        public EmDepuiBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterCompositeMapDeposition() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "composite_map_deposition", this);
        }

        public StrColumnBuilder enterDepositorHoldInstructions() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "depositor_hold_instructions", this);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterMacromoleculeDescription() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "macromolecule_description", this);
        }

        public StrColumnBuilder enterObsoleteInstructions() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "obsolete_instructions", this);
        }

        public StrColumnBuilder enterSameAuthorsAsPdb() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "same_authors_as_pdb", this);
        }

        public StrColumnBuilder enterSameTitleAsPdb() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "same_title_as_pdb", this);
        }

    }

    public static class EmObsoleteBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_obsolete";

        public EmObsoleteBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDate() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterEntry() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

    }

    public static class EmSupersedeBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_supersede";

        public EmSupersedeBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDate() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterEntry() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

    }

    public static class EmEntityAssemblyMolwtBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_entity_assembly_molwt";

        public EmEntityAssemblyMolwtBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntityAssemblyId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_assembly_id", this);
        }

        public StrColumnBuilder enterExperimentalFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "experimental_flag", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterUnits() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "units", this);
        }

        public FloatColumnBuilder enterValue() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "value", this);
        }

        public StrColumnBuilder enterMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "method", this);
        }

    }

    public static class EmEntityAssemblyNaturalsourceBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_entity_assembly_naturalsource";

        public EmEntityAssemblyNaturalsourceBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterCell() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "cell", this);
        }

        public StrColumnBuilder enterCellularLocation() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "cellular_location", this);
        }

        public StrColumnBuilder enterEntityAssemblyId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_assembly_id", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterNcbiTaxId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ncbi_tax_id", this);
        }

        public StrColumnBuilder enterOrganism() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "organism", this);
        }

        public StrColumnBuilder enterOrganelle() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "organelle", this);
        }

        public StrColumnBuilder enterOrgan() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "organ", this);
        }

        public StrColumnBuilder enterStrain() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "strain", this);
        }

        public StrColumnBuilder enterTissue() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "tissue", this);
        }

    }

    public static class EmEntityAssemblySyntheticBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_entity_assembly_synthetic";

        public EmEntityAssemblySyntheticBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterCell() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "cell", this);
        }

        public StrColumnBuilder enterCellularLocation() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "cellular_location", this);
        }

        public StrColumnBuilder enterEntityAssemblyId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_assembly_id", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterNcbiTaxId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ncbi_tax_id", this);
        }

        public StrColumnBuilder enterOrganism() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "organism", this);
        }

        public StrColumnBuilder enterOrganelle() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "organelle", this);
        }

        public StrColumnBuilder enterOrgan() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "organ", this);
        }

        public StrColumnBuilder enterStrain() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "strain", this);
        }

        public StrColumnBuilder enterTissue() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "tissue", this);
        }

    }

    public static class EmEntityAssemblyRecombinantBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_entity_assembly_recombinant";

        public EmEntityAssemblyRecombinantBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterCell() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "cell", this);
        }

        public StrColumnBuilder enterEntityAssemblyId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_assembly_id", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterNcbiTaxId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ncbi_tax_id", this);
        }

        public StrColumnBuilder enterOrganism() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "organism", this);
        }

        public StrColumnBuilder enterPlasmid() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "plasmid", this);
        }

        public StrColumnBuilder enterStrain() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "strain", this);
        }

    }

    public static class EmVirusNaturalHostBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_virus_natural_host";

        public EmVirusNaturalHostBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntityAssemblyId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_assembly_id", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterNcbiTaxId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ncbi_tax_id", this);
        }

        public StrColumnBuilder enterOrganism() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "organism", this);
        }

        public StrColumnBuilder enterStrain() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "strain", this);
        }

    }

    public static class EmVirusSyntheticBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_virus_synthetic";

        public EmVirusSyntheticBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntityAssemblyId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_assembly_id", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterOrganism() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "organism", this);
        }

        public IntColumnBuilder enterNcbiTaxId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ncbi_tax_id", this);
        }

        public StrColumnBuilder enterStrain() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "strain", this);
        }

    }

    public static class EmVirusShellBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_virus_shell";

        public EmVirusShellBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public FloatColumnBuilder enterDiameter() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "diameter", this);
        }

        public StrColumnBuilder enterEntityAssemblyId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_assembly_id", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public IntColumnBuilder enterTriangulation() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "triangulation", this);
        }

    }

    public static class EmSpecimenBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_specimen";

        public EmSpecimenBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public FloatColumnBuilder enterConcentration() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "concentration", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterEmbeddingApplied() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "embedding_applied", this);
        }

        public StrColumnBuilder enterExperimentId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "experiment_id", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterShadowingApplied() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "shadowing_applied", this);
        }

        public StrColumnBuilder enterStainingApplied() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "staining_applied", this);
        }

        public StrColumnBuilder enterVitrificationApplied() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "vitrification_applied", this);
        }

    }

    public static class EmEmbeddingBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_embedding";

        public EmEmbeddingBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterMaterial() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "material", this);
        }

        public StrColumnBuilder enterSpecimenId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "specimen_id", this);
        }

    }

    public static class EmFiducialMarkersBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_fiducial_markers";

        public EmFiducialMarkersBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public FloatColumnBuilder enterDiameter() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "diameter", this);
        }

        public StrColumnBuilder enterEmTomographySpecimenId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "em_tomography_specimen_id", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterManufacturer() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "manufacturer", this);
        }

    }

    public static class EmFocusedIonBeamBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_focused_ion_beam";

        public EmFocusedIonBeamBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public FloatColumnBuilder enterCurrent() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "current", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public IntColumnBuilder enterDoseRate() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "dose_rate", this);
        }

        public FloatColumnBuilder enterDuration() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "duration", this);
        }

        public StrColumnBuilder enterEmTomographySpecimenId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "em_tomography_specimen_id", this);
        }

        public IntColumnBuilder enterFinalThickness() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "final_thickness", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterInitialThickness() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "initial_thickness", this);
        }

        public StrColumnBuilder enterInstrument() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "instrument", this);
        }

        public StrColumnBuilder enterIon() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ion", this);
        }

        public IntColumnBuilder enterTemperature() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "temperature", this);
        }

        public IntColumnBuilder enterVoltage() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "voltage", this);
        }

    }

    public static class EmGridPretreatmentBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_grid_pretreatment";

        public EmGridPretreatmentBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterAtmosphere() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atmosphere", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public FloatColumnBuilder enterPressure() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pressure", this);
        }

        public StrColumnBuilder enterSampleSupportId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "sample_support_id", this);
        }

        public IntColumnBuilder enterTime() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "time", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

    }

    public static class EmUltramicrotomyBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_ultramicrotomy";

        public EmUltramicrotomyBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterEmTomographySpecimenId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "em_tomography_specimen_id", this);
        }

        public IntColumnBuilder enterFinalThickness() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "final_thickness", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterInstrument() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "instrument", this);
        }

        public IntColumnBuilder enterTemperature() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "temperature", this);
        }

    }

    public static class EmHighPressureFreezingBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_high_pressure_freezing";

        public EmHighPressureFreezingBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterEmTomographySpecimenId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "em_tomography_specimen_id", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterInstrument() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "instrument", this);
        }

    }

    public static class EmShadowingBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_shadowing";

        public EmShadowingBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public FloatColumnBuilder enterAngle() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "angle", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterMaterial() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "material", this);
        }

        public StrColumnBuilder enterSpecimenId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "specimen_id", this);
        }

        public FloatColumnBuilder enterThickness() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "thickness", this);
        }

    }

    public static class EmTomographySpecimenBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_tomography_specimen";

        public EmTomographySpecimenBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterCryoProtectant() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "cryo_protectant", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterFiducialMarkers() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "fiducial_markers", this);
        }

        public StrColumnBuilder enterHighPressureFreezing() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "high_pressure_freezing", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterSectioning() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "sectioning", this);
        }

        public StrColumnBuilder enterSpecimenId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "specimen_id", this);
        }

    }

    public static class EmCrystalFormationBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_crystal_formation";

        public EmCrystalFormationBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterAtmosphere() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atmosphere", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterInstrument() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "instrument", this);
        }

        public StrColumnBuilder enterLipidMixture() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "lipid_mixture", this);
        }

        public FloatColumnBuilder enterLipidProteinRatio() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "lipid_protein_ratio", this);
        }

        public StrColumnBuilder enterSpecimenId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "specimen_id", this);
        }

        public IntColumnBuilder enterTemperature() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "temperature", this);
        }

        public IntColumnBuilder enterTime() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "time", this);
        }

        public StrColumnBuilder enterTimeUnit() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "time_unit", this);
        }

    }

    public static class EmStainingBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_staining";

        public EmStainingBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterMaterial() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "material", this);
        }

        public StrColumnBuilder enterSpecimenId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "specimen_id", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

    }

    public static class EmSupportFilmBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_support_film";

        public EmSupportFilmBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterMaterial() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "material", this);
        }

        public StrColumnBuilder enterSampleSupportId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "sample_support_id", this);
        }

        public FloatColumnBuilder enterThickness() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "thickness", this);
        }

        public StrColumnBuilder enterTopology() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "topology", this);
        }

    }

    public static class EmBufferComponentBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_buffer_component";

        public EmBufferComponentBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterBufferId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "buffer_id", this);
        }

        public FloatColumnBuilder enterConcentration() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "concentration", this);
        }

        public StrColumnBuilder enterConcentrationUnits() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "concentration_units", this);
        }

        public StrColumnBuilder enterFormula() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "formula", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

    }

    public static class EmDiffractionBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_diffraction";

        public EmDiffractionBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public FloatColumnBuilder enterCameraLength() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "camera_length", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterImagingId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "imaging_id", this);
        }

        public StrColumnBuilder enterTiltAngleList() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "tilt_angle_list", this);
        }

    }

    public static class EmDiffractionShellBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_diffraction_shell";

        public EmDiffractionShellBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEmDiffractionStatsId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "em_diffraction_stats_id", this);
        }

        public FloatColumnBuilder enterFourierSpaceCoverage() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "fourier_space_coverage", this);
        }

        public FloatColumnBuilder enterHighResolution() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "high_resolution", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public FloatColumnBuilder enterLowResolution() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "low_resolution", this);
        }

        public FloatColumnBuilder enterMultiplicity() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "multiplicity", this);
        }

        public IntColumnBuilder enterNumStructureFactors() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_structure_factors", this);
        }

        public FloatColumnBuilder enterPhaseResidual() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "phase_residual", this);
        }

    }

    public static class EmDiffractionStatsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_diffraction_stats";

        public EmDiffractionStatsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public FloatColumnBuilder enterFourierSpaceCoverage() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "fourier_space_coverage", this);
        }

        public FloatColumnBuilder enterHighResolution() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "high_resolution", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterImageProcessingId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "image_processing_id", this);
        }

        public IntColumnBuilder enterNumIntensitiesMeasured() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_intensities_measured", this);
        }

        public IntColumnBuilder enterNumStructureFactors() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_structure_factors", this);
        }

        public FloatColumnBuilder enterOverallPhaseError() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "overall_phase_error", this);
        }

        public FloatColumnBuilder enterOverallPhaseResidual() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "overall_phase_residual", this);
        }

        public StrColumnBuilder enterPhaseErrorRejectionCriteria() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "phase_error_rejection_criteria", this);
        }

        public FloatColumnBuilder enterRMerge() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "r_merge", this);
        }

        public FloatColumnBuilder enterRSym() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "r_sym", this);
        }

    }

    public static class EmTomographyBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_tomography";

        public EmTomographyBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public FloatColumnBuilder enterAxis1AngleIncrement() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "axis1_angle_increment", this);
        }

        public FloatColumnBuilder enterAxis1MaxAngle() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "axis1_max_angle", this);
        }

        public FloatColumnBuilder enterAxis1MinAngle() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "axis1_min_angle", this);
        }

        public FloatColumnBuilder enterAxis2AngleIncrement() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "axis2_angle_increment", this);
        }

        public FloatColumnBuilder enterAxis2MaxAngle() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "axis2_max_angle", this);
        }

        public FloatColumnBuilder enterAxis2MinAngle() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "axis2_min_angle", this);
        }

        public FloatColumnBuilder enterDualTiltAxisRotation() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "dual_tilt_axis_rotation", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterImagingId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "imaging_id", this);
        }

    }

    public static class EmImageRecordingBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_image_recording";

        public EmImageRecordingBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public FloatColumnBuilder enterAverageExposureTime() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "average_exposure_time", this);
        }

        public FloatColumnBuilder enterAvgElectronDosePerSubtomogram() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "avg_electron_dose_per_subtomogram", this);
        }

        public FloatColumnBuilder enterAvgElectronDosePerImage() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "avg_electron_dose_per_image", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterDetectorMode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "detector_mode", this);
        }

        public StrColumnBuilder enterFilmOrDetectorModel() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "film_or_detector_model", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterImagingId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "imaging_id", this);
        }

        public IntColumnBuilder enterNumDiffractionImages() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_diffraction_images", this);
        }

        public IntColumnBuilder enterNumGridsImaged() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_grids_imaged", this);
        }

        public IntColumnBuilder enterNumRealImages() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_real_images", this);
        }

    }

    public static class EmImagingOpticsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_imaging_optics";

        public EmImagingOpticsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterChrAberrationCorrector() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "chr_aberration_corrector", this);
        }

        public StrColumnBuilder enterEnergyfilterLower() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "energyfilter_lower", this);
        }

        public FloatColumnBuilder enterEnergyfilterSlitWidth() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "energyfilter_slit_width", this);
        }

        public StrColumnBuilder enterEnergyfilterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "energyfilter_name", this);
        }

        public StrColumnBuilder enterEnergyfilterUpper() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "energyfilter_upper", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterImagingId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "imaging_id", this);
        }

        public StrColumnBuilder enterPhasePlate() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "phase_plate", this);
        }

        public StrColumnBuilder enterSphAberrationCorrector() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "sph_aberration_corrector", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class EmFinalClassificationBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_final_classification";

        public EmFinalClassificationBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterAvgNumImagesPerClass() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "avg_num_images_per_class", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterImageProcessingId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "image_processing_id", this);
        }

        public IntColumnBuilder enterNumClasses() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_classes", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

    }

    public static class EmStartModelBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_start_model";

        public EmStartModelBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterEmdbId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "emdb_id", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterImageProcessingId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "image_processing_id", this);
        }

        public StrColumnBuilder enterInsilicoModel() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "insilico_model", this);
        }

        public FloatColumnBuilder enterOrthogonalTiltAngle1() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "orthogonal_tilt_angle1", this);
        }

        public FloatColumnBuilder enterOrthogonalTiltAngle2() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "orthogonal_tilt_angle2", this);
        }

        public IntColumnBuilder enterOrthogonalTiltNumImages() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "orthogonal_tilt_num_images", this);
        }

        public StrColumnBuilder enterOther() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "other", this);
        }

        public StrColumnBuilder enterPdbId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdb_id", this);
        }

        public FloatColumnBuilder enterRandomConicalTiltAngle() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "random_conical_tilt_angle", this);
        }

        public IntColumnBuilder enterRandomConicalTiltNumImages() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "random_conical_tilt_num_images", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

    }

    public static class EmSoftwareBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_software";

        public EmSoftwareBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterCategory() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "category", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterImageProcessingId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "image_processing_id", this);
        }

        public StrColumnBuilder enterFittingId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "fitting_id", this);
        }

        public StrColumnBuilder enterImagingId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "imaging_id", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public StrColumnBuilder enterVersion() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "version", this);
        }

    }

    public static class EmEulerAngleAssignmentBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_euler_angle_assignment";

        public EmEulerAngleAssignmentBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterImageProcessingId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "image_processing_id", this);
        }

        public StrColumnBuilder enterOrder() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "order", this);
        }

        public FloatColumnBuilder enterProjMatchingAngularSampling() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "proj_matching_angular_sampling", this);
        }

        public StrColumnBuilder enterProjMatchingMeritFunction() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "proj_matching_merit_function", this);
        }

        public IntColumnBuilder enterProjMatchingNumProjections() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "proj_matching_num_projections", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

    }

    public static class EmCtfCorrectionBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_ctf_correction";

        public EmCtfCorrectionBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterAmplitudeCorrection() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "amplitude_correction", this);
        }

        public FloatColumnBuilder enterAmplitudeCorrectionFactor() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "amplitude_correction_factor", this);
        }

        public StrColumnBuilder enterAmplitudeCorrectionSpace() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "amplitude_correction_space", this);
        }

        public StrColumnBuilder enterCorrectionOperation() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "correction_operation", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterEmImageProcessingId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "em_image_processing_id", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterPhaseReversal() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "phase_reversal", this);
        }

        public StrColumnBuilder enterPhaseReversalAnisotropic() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "phase_reversal_anisotropic", this);
        }

        public StrColumnBuilder enterPhaseReversalCorrectionSpace() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "phase_reversal_correction_space", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

    }

    public static class EmVolumeSelectionBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_volume_selection";

        public EmVolumeSelectionBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterImageProcessingId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "image_processing_id", this);
        }

        public StrColumnBuilder enterMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "method", this);
        }

        public IntColumnBuilder enterNumTomograms() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_tomograms", this);
        }

        public IntColumnBuilder enterNumVolumesExtracted() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_volumes_extracted", this);
        }

        public StrColumnBuilder enterReferenceModel() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "reference_model", this);
        }

    }

    public static class Em3dCrystalEntityBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_3d_crystal_entity";

        public Em3dCrystalEntityBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public FloatColumnBuilder enterAngleAlpha() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "angle_alpha", this);
        }

        public FloatColumnBuilder enterAngleBeta() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "angle_beta", this);
        }

        public FloatColumnBuilder enterAngleGamma() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "angle_gamma", this);
        }

        public StrColumnBuilder enterImageProcessingId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "image_processing_id", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public FloatColumnBuilder enterLengthA() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "length_a", this);
        }

        public FloatColumnBuilder enterLengthB() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "length_b", this);
        }

        public FloatColumnBuilder enterLengthC() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "length_c", this);
        }

        public StrColumnBuilder enterSpaceGroupName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "space_group_name", this);
        }

        public IntColumnBuilder enterSpaceGroupNum() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "space_group_num", this);
        }

    }

    public static class Em2dCrystalEntityBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_2d_crystal_entity";

        public Em2dCrystalEntityBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public FloatColumnBuilder enterAngleGamma() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "angle_gamma", this);
        }

        public FloatColumnBuilder enterCSamplingLength() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "c_sampling_length", this);
        }

        public StrColumnBuilder enterImageProcessingId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "image_processing_id", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterEntityAssemblyId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_assembly_id", this);
        }

        public FloatColumnBuilder enterLengthA() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "length_a", this);
        }

        public FloatColumnBuilder enterLengthB() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "length_b", this);
        }

        public FloatColumnBuilder enterLengthC() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "length_c", this);
        }

        public StrColumnBuilder enterSpaceGroupNameH_M() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "space_group_name_H-M", this);
        }

    }

    public static class EmImageProcessingBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_image_processing";

        public EmImageProcessingBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterImageRecordingId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "image_recording_id", this);
        }

    }

    public static class EmParticleSelectionBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_particle_selection";

        public EmParticleSelectionBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterImageProcessingId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "image_processing_id", this);
        }

        public StrColumnBuilder enterMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "method", this);
        }

        public IntColumnBuilder enterNumParticlesSelected() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_particles_selected", this);
        }

        public StrColumnBuilder enterReferenceModel() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "reference_model", this);
        }

    }

    public static class EmMapBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_map";

        public EmMapBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterAnnotationDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "annotation_details", this);
        }

        public StrColumnBuilder enterAxisOrderFast() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "axis_order_fast", this);
        }

        public StrColumnBuilder enterAxisOrderMedium() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "axis_order_medium", this);
        }

        public StrColumnBuilder enterAxisOrderSlow() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "axis_order_slow", this);
        }

        public FloatColumnBuilder enterCellA() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "cell_a", this);
        }

        public FloatColumnBuilder enterCellB() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "cell_b", this);
        }

        public FloatColumnBuilder enterCellC() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "cell_c", this);
        }

        public FloatColumnBuilder enterCellAlpha() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "cell_alpha", this);
        }

        public FloatColumnBuilder enterCellBeta() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "cell_beta", this);
        }

        public FloatColumnBuilder enterCellGamma() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "cell_gamma", this);
        }

        public FloatColumnBuilder enterContourLevel() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "contour_level", this);
        }

        public StrColumnBuilder enterContourLevelSource() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "contour_level_source", this);
        }

        public StrColumnBuilder enterDataType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "data_type", this);
        }

        public IntColumnBuilder enterDimensionsCol() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "dimensions_col", this);
        }

        public IntColumnBuilder enterDimensionsRow() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "dimensions_row", this);
        }

        public IntColumnBuilder enterDimensionsSec() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "dimensions_sec", this);
        }

        public StrColumnBuilder enterEndianType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "endian_type", this);
        }

        public StrColumnBuilder enterFile() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "file", this);
        }

        public StrColumnBuilder enterOriginalFile() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "original_file", this);
        }

        public StrColumnBuilder enterFormat() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "format", this);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterPartition() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "partition", this);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterLabel() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label", this);
        }

        public IntColumnBuilder enterLimitCol() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "limit_col", this);
        }

        public IntColumnBuilder enterLimitRow() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "limit_row", this);
        }

        public IntColumnBuilder enterLimitSec() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "limit_sec", this);
        }

        public IntColumnBuilder enterOriginCol() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "origin_col", this);
        }

        public IntColumnBuilder enterOriginRow() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "origin_row", this);
        }

        public IntColumnBuilder enterOriginSec() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "origin_sec", this);
        }

        public FloatColumnBuilder enterPixelSpacingX() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pixel_spacing_x", this);
        }

        public FloatColumnBuilder enterPixelSpacingY() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pixel_spacing_y", this);
        }

        public FloatColumnBuilder enterPixelSpacingZ() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pixel_spacing_z", this);
        }

        public IntColumnBuilder enterSizeKb() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "size_kb", this);
        }

        public IntColumnBuilder enterSpacingX() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "spacing_x", this);
        }

        public IntColumnBuilder enterSpacingY() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "spacing_y", this);
        }

        public IntColumnBuilder enterSpacingZ() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "spacing_z", this);
        }

        public FloatColumnBuilder enterStatisticsAverage() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "statistics_average", this);
        }

        public FloatColumnBuilder enterStatisticsMaximum() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "statistics_maximum", this);
        }

        public FloatColumnBuilder enterStatisticsMinimum() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "statistics_minimum", this);
        }

        public FloatColumnBuilder enterStatisticsStd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "statistics_std", this);
        }

        public IntColumnBuilder enterSymmetrySpaceGroup() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "symmetry_space_group", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

    }

    public static class EmFscCurveBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_fsc_curve";

        public EmFscCurveBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterFile() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "file", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

    }

    public static class EmInterpretFigureBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_interpret_figure";

        public EmInterpretFigureBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterFile() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "file", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

    }

    public static class EmLayerLinesBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_layer_lines";

        public EmLayerLinesBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterExperimentId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "experiment_id", this);
        }

        public StrColumnBuilder enterFile() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "file", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

    }

    public static class EmStructureFactorsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_structure_factors";

        public EmStructureFactorsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterExperimentId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "experiment_id", this);
        }

        public StrColumnBuilder enterFile() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "file", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

    }

    public static class EmDepositorInfoBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_depositor_info";

        public EmDepositorInfoBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterEmMethodSelection() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "em_method_selection", this);
        }

        public StrColumnBuilder enterMolecularDescriptionFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "molecular_description_flag", this);
        }

    }

    public static class EmMapDepositorInfoBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_map_depositor_info";

        public EmMapDepositorInfoBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterExperimentId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "experiment_id", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterMapType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "map_type", this);
        }

        public StrColumnBuilder enterUploadFileName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "upload_file_name", this);
        }

        public StrColumnBuilder enterUploadFormat() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "upload_format", this);
        }

        public FloatColumnBuilder enterContourLevel() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "contour_level", this);
        }

        public StrColumnBuilder enterAnnotationDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "annotation_details", this);
        }

        public FloatColumnBuilder enterPixelSpacingX() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pixel_spacing_x", this);
        }

        public FloatColumnBuilder enterPixelSpacingY() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pixel_spacing_y", this);
        }

        public FloatColumnBuilder enterPixelSpacingZ() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pixel_spacing_z", this);
        }

    }

    public static class EmMaskDepositorInfoBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_mask_depositor_info";

        public EmMaskDepositorInfoBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterUploadFileName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "upload_file_name", this);
        }

        public StrColumnBuilder enterUploadFormat() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "upload_format", this);
        }

        public FloatColumnBuilder enterContourLevel() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "contour_level", this);
        }

        public StrColumnBuilder enterAnnotationDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "annotation_details", this);
        }

        public FloatColumnBuilder enterPixelSpacingX() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pixel_spacing_x", this);
        }

        public FloatColumnBuilder enterPixelSpacingY() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pixel_spacing_y", this);
        }

        public FloatColumnBuilder enterPixelSpacingZ() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pixel_spacing_z", this);
        }

    }

    public static class EmFigureDepositorInfoBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_figure_depositor_info";

        public EmFigureDepositorInfoBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterExperimentId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "experiment_id", this);
        }

        public StrColumnBuilder enterUploadFileName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "upload_file_name", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class EmLayerLinesDepositorInfoBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_layer_lines_depositor_info";

        public EmLayerLinesDepositorInfoBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterExperimentId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "experiment_id", this);
        }

        public StrColumnBuilder enterUploadFileName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "upload_file_name", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class EmStructureFactorsDepositorInfoBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "em_structure_factors_depositor_info";

        public EmStructureFactorsDepositorInfoBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterExperimentId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "experiment_id", this);
        }

        public StrColumnBuilder enterUploadFileName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "upload_file_name", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class PdbxSeqMapDepositorInfoBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_seq_map_depositor_info";

        public PdbxSeqMapDepositorInfoBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public StrColumnBuilder enterAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id", this);
        }

        public StrColumnBuilder enterOneLetterCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "one_letter_code", this);
        }

        public StrColumnBuilder enterOneLetterCodeMod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "one_letter_code_mod", this);
        }

    }

    public static class PdbxChemCompDepositorInfoBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_chem_comp_depositor_info";

        public PdbxChemCompDepositorInfoBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal", this);
        }

        public StrColumnBuilder enterCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id", this);
        }

        public StrColumnBuilder enterAltCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "alt_comp_id", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public StrColumnBuilder enterFormula() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "formula", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public StrColumnBuilder enterDescriptor() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "descriptor", this);
        }

        public StrColumnBuilder enterDescriptorType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "descriptor_type", this);
        }

        public StrColumnBuilder enterInDictionaryFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "in_dictionary_flag", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class PdbxStructRefSeqDepositorInfoBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_struct_ref_seq_depositor_info";

        public PdbxStructRefSeqDepositorInfoBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterRefId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ref_id", this);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public IntColumnBuilder enterDbAlignBeg() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "db_align_beg", this);
        }

        public IntColumnBuilder enterDbAlignEnd() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "db_align_end", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterDbAccession() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "db_accession", this);
        }

        public StrColumnBuilder enterDbCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "db_code", this);
        }

        public StrColumnBuilder enterDbName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "db_name", this);
        }

        public StrColumnBuilder enterDbSeqOneLetterCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "db_seq_one_letter_code", this);
        }

        public StrColumnBuilder enterSeqAlignBegin() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "seq_align_begin", this);
        }

        public StrColumnBuilder enterSeqAlignEnd() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "seq_align_end", this);
        }

    }

    public static class PdbxStructRefSeqDifDepositorInfoBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_struct_ref_seq_dif_depositor_info";

        public PdbxStructRefSeqDifDepositorInfoBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal", this);
        }

        public StrColumnBuilder enterRefId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ref_id", this);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public StrColumnBuilder enterDbMonId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "db_mon_id", this);
        }

        public IntColumnBuilder enterDbSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "db_seq_id", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterAuthMonId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_mon_id", this);
        }

        public IntColumnBuilder enterAuthSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id", this);
        }

        public StrColumnBuilder enterDbAccession() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "db_accession", this);
        }

        public StrColumnBuilder enterDbCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "db_code", this);
        }

        public StrColumnBuilder enterDbName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "db_name", this);
        }

        public StrColumnBuilder enterAnnotation() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "annotation", this);
        }

    }

    public static class PdbxStructAssemblyPropDepositorInfoBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_struct_assembly_prop_depositor_info";

        public PdbxStructAssemblyPropDepositorInfoBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterBiolId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "biol_id", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public StrColumnBuilder enterValue() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "value", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class PdbxStructAssemblyDepositorInfoBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_struct_assembly_depositor_info";

        public PdbxStructAssemblyDepositorInfoBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterMethodDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "method_details", this);
        }

        public StrColumnBuilder enterOligomericDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "oligomeric_details", this);
        }

        public StrColumnBuilder enterOligomericCount() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "oligomeric_count", this);
        }

        public StrColumnBuilder enterMatrixFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "matrix_flag", this);
        }

        public StrColumnBuilder enterUploadFileName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "upload_file_name", this);
        }

    }

    public static class PdbxStructAssemblyGenDepositorInfoBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_struct_assembly_gen_depositor_info";

        public PdbxStructAssemblyGenDepositorInfoBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterAsymIdList() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "asym_id_list", this);
        }

        public StrColumnBuilder enterAssemblyId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "assembly_id", this);
        }

        public StrColumnBuilder enterOperExpression() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "oper_expression", this);
        }

        public StrColumnBuilder enterFullMatrices() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "full_matrices", this);
        }

        public StrColumnBuilder enterSymmetryOperation() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "symmetry_operation", this);
        }

        public StrColumnBuilder enterAtUnitMatrix() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "at_unit_matrix", this);
        }

        public StrColumnBuilder enterChainIdList() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "chain_id_list", this);
        }

        public StrColumnBuilder enterAllChains() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "all_chains", this);
        }

        public FloatColumnBuilder enterHelicalRotation() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "helical_rotation", this);
        }

        public FloatColumnBuilder enterHelicalRise() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "helical_rise", this);
        }

    }

    public static class PdbxStructOperListDepositorInfoBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_struct_oper_list_depositor_info";

        public PdbxStructOperListDepositorInfoBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public StrColumnBuilder enterSymmetryOperation() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "symmetry_operation", this);
        }

        public FloatColumnBuilder enterMatrix11() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "matrix[1][1]", this);
        }

        public FloatColumnBuilder enterMatrix12() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "matrix[1][2]", this);
        }

        public FloatColumnBuilder enterMatrix13() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "matrix[1][3]", this);
        }

        public FloatColumnBuilder enterMatrix21() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "matrix[2][1]", this);
        }

        public FloatColumnBuilder enterMatrix22() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "matrix[2][2]", this);
        }

        public FloatColumnBuilder enterMatrix23() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "matrix[2][3]", this);
        }

        public FloatColumnBuilder enterMatrix31() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "matrix[3][1]", this);
        }

        public FloatColumnBuilder enterMatrix32() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "matrix[3][2]", this);
        }

        public FloatColumnBuilder enterMatrix33() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "matrix[3][3]", this);
        }

        public FloatColumnBuilder enterVector1() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "vector[1]", this);
        }

        public FloatColumnBuilder enterVector2() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "vector[2]", this);
        }

        public FloatColumnBuilder enterVector3() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "vector[3]", this);
        }

    }

    public static class PdbxPointSymmetryDepositorInfoBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_point_symmetry_depositor_info";

        public PdbxPointSymmetryDepositorInfoBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterSchoenfliesSymbol() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "Schoenflies_symbol", this);
        }

        public IntColumnBuilder enterCircularSymmetry() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "circular_symmetry", this);
        }

        public StrColumnBuilder enterH_MNotation() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "H-M_notation", this);
        }

        public StrColumnBuilder enterStatusFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "status_flag", this);
        }

    }

    public static class PdbxHelicalSymmetryDepositorInfoBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_helical_symmetry_depositor_info";

        public PdbxHelicalSymmetryDepositorInfoBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public IntColumnBuilder enterNumberOfOperations() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number_of_operations", this);
        }

        public FloatColumnBuilder enterRotationPerNSubunits() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rotation_per_n_subunits", this);
        }

        public FloatColumnBuilder enterRisePerNSubunits() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rise_per_n_subunits", this);
        }

        public IntColumnBuilder enterNSubunitsDivisor() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "n_subunits_divisor", this);
        }

        public StrColumnBuilder enterDyadAxis() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "dyad_axis", this);
        }

        public IntColumnBuilder enterCircularSymmetry() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "circular_symmetry", this);
        }

        public StrColumnBuilder enterStatusFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "status_flag", this);
        }

    }

    public static class PdbxStructAssemblyAuthEvidenceDepositorInfoBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_struct_assembly_auth_evidence_depositor_info";

        public PdbxStructAssemblyAuthEvidenceDepositorInfoBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterAssemblyId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "assembly_id", this);
        }

        public StrColumnBuilder enterExperimentalSupport() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "experimental_support", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class PdbxSolventAtomSiteMappingBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_solvent_atom_site_mapping";

        public PdbxSolventAtomSiteMappingBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterLabelAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_alt_id", this);
        }

        public StrColumnBuilder enterLabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_asym_id", this);
        }

        public StrColumnBuilder enterLabelAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_atom_id", this);
        }

        public StrColumnBuilder enterLabelCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_comp_id", this);
        }

        public IntColumnBuilder enterLabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "label_seq_id", this);
        }

        public StrColumnBuilder enterPDBInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "PDB_ins_code", this);
        }

        public StrColumnBuilder enterPreAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pre_auth_asym_id", this);
        }

        public StrColumnBuilder enterPreAuthAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pre_auth_atom_id", this);
        }

        public StrColumnBuilder enterPreAuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pre_auth_comp_id", this);
        }

        public StrColumnBuilder enterPreAuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pre_auth_seq_id", this);
        }

        public StrColumnBuilder enterPrePDBInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pre_PDB_ins_code", this);
        }

        public StrColumnBuilder enterPreAuthAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pre_auth_alt_id", this);
        }

        public StrColumnBuilder enterAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id", this);
        }

        public StrColumnBuilder enterAuthAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_atom_id", this);
        }

        public StrColumnBuilder enterAuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_comp_id", this);
        }

        public StrColumnBuilder enterAuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id", this);
        }

        public StrColumnBuilder enterAuthAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_alt_id", this);
        }

        public FloatColumnBuilder enterOccupancy() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "occupancy", this);
        }

        public FloatColumnBuilder enterCartnX() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Cartn_x", this);
        }

        public FloatColumnBuilder enterCartnY() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Cartn_y", this);
        }

        public FloatColumnBuilder enterCartnZ() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Cartn_z", this);
        }

        public FloatColumnBuilder enterPreCartnX() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pre_Cartn_x", this);
        }

        public FloatColumnBuilder enterPreCartnY() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pre_Cartn_y", this);
        }

        public FloatColumnBuilder enterPreCartnZ() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pre_Cartn_z", this);
        }

        public StrColumnBuilder enterSymmetry() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "symmetry", this);
        }

        public StrColumnBuilder enterSymmetryAsXyz() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "symmetry_as_xyz", this);
        }

    }

    public static class PdbxMoleculeFeaturesDepositorInfoBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_molecule_features_depositor_info";

        public PdbxMoleculeFeaturesDepositorInfoBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public StrColumnBuilder enterClazz() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "class", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class PdbxChemCompInstanceDepositorInfoBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_chem_comp_instance_depositor_info";

        public PdbxChemCompInstanceDepositorInfoBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal", this);
        }

        public StrColumnBuilder enterLabelAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_alt_id", this);
        }

        public StrColumnBuilder enterCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id", this);
        }

        public StrColumnBuilder enterPDBInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "PDB_ins_code", this);
        }

        public StrColumnBuilder enterAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id", this);
        }

        public StrColumnBuilder enterAuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id", this);
        }

        public StrColumnBuilder enterInPolymerFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "in_polymer_flag", this);
        }

        public StrColumnBuilder enterAuthorProvidedFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "author_provided_flag", this);
        }

        public StrColumnBuilder enterFormula() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "formula", this);
        }

    }

    public static class PdbxDepuiStatusFlagsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_depui_status_flags";

        public PdbxDepuiStatusFlagsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDepDatasetId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "dep_dataset_id", this);
        }

        public StrColumnBuilder enterPrimaryCitationStatus() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "primary_citation_status", this);
        }

        public StrColumnBuilder enterCorrespondingAuthorStatus() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "corresponding_author_status", this);
        }

        public StrColumnBuilder enterReferenceCitationStatus() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "reference_citation_status", this);
        }

        public StrColumnBuilder enterIsGrantFunded() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "is_grant_funded", this);
        }

        public StrColumnBuilder enterHasNcsData() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "has_ncs_data", this);
        }

        public StrColumnBuilder enterPredictionTarget() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "prediction_target", this);
        }

        public StrColumnBuilder enterHasHelicalSymmetry() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "has_helical_symmetry", this);
        }

        public StrColumnBuilder enterHasPointSymmetry() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "has_point_symmetry", this);
        }

        public StrColumnBuilder enterHasCyclicSymmetry() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "has_cyclic_symmetry", this);
        }

        public StrColumnBuilder enterHasAcceptedTermsAndConditions() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "has_accepted_terms_and_conditions", this);
        }

        public StrColumnBuilder enterHasViewedValidationReport() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "has_viewed_validation_report", this);
        }

        public StrColumnBuilder enterValidatedModelFileName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "validated_model_file_name", this);
        }

        public StrColumnBuilder enterMergePriorModelFileName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "merge_prior_model_file_name", this);
        }

        public StrColumnBuilder enterMergeReplaceModelFileName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "merge_replace_model_file_name", this);
        }

        public StrColumnBuilder enterMergeOutputModelFileName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "merge_output_model_file_name", this);
        }

        public StrColumnBuilder enterIsLigandProcessingComplete() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "is_ligand_processing_complete", this);
        }

        public StrColumnBuilder enterSampleXyzSequenceAlignmentsValid() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "sample_xyz_sequence_alignments_valid", this);
        }

        public StrColumnBuilder enterHasSasData() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "has_sas_data", this);
        }

        public StrColumnBuilder enterIsSasDeposited() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "is_sas_deposited", this);
        }

        public StrColumnBuilder enterUseSasRefine() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "use_sas_refine", this);
        }

        public StrColumnBuilder enterMergedFail() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "merged_fail", this);
        }

        public StrColumnBuilder enterPostRelReplacementReason() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "post_rel_replacement_reason", this);
        }

        public StrColumnBuilder enterPostRelReplacementReasonDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "post_rel_replacement_reason_details", this);
        }

        public StrColumnBuilder enterHasAcceptedAssemblies() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "has_accepted_assemblies", this);
        }

    }

    public static class PdbxDepuiUploadBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_depui_upload";

        public PdbxDepuiUploadBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal", this);
        }

        public StrColumnBuilder enterFileContentType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "file_content_type", this);
        }

        public StrColumnBuilder enterFileType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "file_type", this);
        }

        public StrColumnBuilder enterFileName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "file_name", this);
        }

        public IntColumnBuilder enterFileSize() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "file_size", this);
        }

        public StrColumnBuilder enterValidFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "valid_flag", this);
        }

        public StrColumnBuilder enterDiagnosticMessage() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "diagnostic_message", this);
        }

        public StrColumnBuilder enterSequenceAlign() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "sequence_align", this);
        }

    }

    public static class PdbxDepuiValidationStatusFlagsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_depui_validation_status_flags";

        public PdbxDepuiValidationStatusFlagsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDepDatasetId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "dep_dataset_id", this);
        }

        public StrColumnBuilder enterResidualBFactorsFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "residual_B_factors_flag", this);
        }

        public IntColumnBuilder enterOccupancyOutliersLow() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "occupancy_outliers_low", this);
        }

        public IntColumnBuilder enterOccupancyOutliersHigh() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "occupancy_outliers_high", this);
        }

        public IntColumnBuilder enterAdpOutliersLow() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "adp_outliers_low", this);
        }

        public IntColumnBuilder enterSolventOutliers() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "solvent_outliers", this);
        }

        public StrColumnBuilder enterTlsNoAniso() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "tls_no_aniso", this);
        }

        public StrColumnBuilder enterAdpOutliersZero() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "adp_outliers_zero", this);
        }

    }

    public static class PdbxChemCompUploadDepositorInfoBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_chem_comp_upload_depositor_info";

        public PdbxChemCompUploadDepositorInfoBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal", this);
        }

        public StrColumnBuilder enterCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id", this);
        }

        public StrColumnBuilder enterUploadFileType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "upload_file_type", this);
        }

        public StrColumnBuilder enterUploadFileName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "upload_file_name", this);
        }

    }

    public static class PdbxDepuiEntityStatusFlagsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_depui_entity_status_flags";

        public PdbxDepuiEntityStatusFlagsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDepDatasetId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "dep_dataset_id", this);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public StrColumnBuilder enterHasMutation() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "has_mutation", this);
        }

        public StrColumnBuilder enterSampleXyzSequenceAlignmentsValid() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "sample_xyz_sequence_alignments_valid", this);
        }

    }

    public static class PdbxDepuiEntityFeaturesBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_depui_entity_features";

        public PdbxDepuiEntityFeaturesBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDepDatasetId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "dep_dataset_id", this);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

    }

    public static class PdbxDepositionMessageInfoBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_deposition_message_info";

        public PdbxDepositionMessageInfoBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal", this);
        }

        public StrColumnBuilder enterDepositionDataSetId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "deposition_data_set_id", this);
        }

        public StrColumnBuilder enterMessageId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "message_id", this);
        }

        public StrColumnBuilder enterTimestamp() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "timestamp", this);
        }

        public StrColumnBuilder enterSender() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "sender", this);
        }

        public StrColumnBuilder enterContentType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "content_type", this);
        }

        public StrColumnBuilder enterContentValue() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "content_value", this);
        }

        public StrColumnBuilder enterParentMessageId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "parent_message_id", this);
        }

        public StrColumnBuilder enterMessageSubject() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "message_subject", this);
        }

        public StrColumnBuilder enterMessageText() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "message_text", this);
        }

        public StrColumnBuilder enterMessageType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "message_type", this);
        }

        public StrColumnBuilder enterSendStatus() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "send_status", this);
        }

    }

    public static class PdbxDepositionMessageFileReferenceBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_deposition_message_file_reference";

        public PdbxDepositionMessageFileReferenceBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal", this);
        }

        public StrColumnBuilder enterDepositionDataSetId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "deposition_data_set_id", this);
        }

        public StrColumnBuilder enterMessageId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "message_id", this);
        }

        public StrColumnBuilder enterContentType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "content_type", this);
        }

        public StrColumnBuilder enterContentFormat() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "content_format", this);
        }

        public StrColumnBuilder enterPartitionNumber() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "partition_number", this);
        }

        public StrColumnBuilder enterVersionId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "version_id", this);
        }

        public StrColumnBuilder enterStorageType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "storage_type", this);
        }

    }

    public static class PdbxDepuiEntryDetailsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_depui_entry_details";

        public PdbxDepuiEntryDetailsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDepDatasetId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "dep_dataset_id", this);
        }

        public StrColumnBuilder enterWwpdbSiteId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "wwpdb_site_id", this);
        }

        public StrColumnBuilder enterExperimentalMethods() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "experimental_methods", this);
        }

        public StrColumnBuilder enterRequestedAccessionTypes() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "requested_accession_types", this);
        }

        public StrColumnBuilder enterValidatedContactEmail() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "validated_contact_email", this);
        }

        public StrColumnBuilder enterCountry() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "country", this);
        }

        public StrColumnBuilder enterStructuralGenomicsFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "structural_genomics_flag", this);
        }

        public StrColumnBuilder enterRelatedDatabaseName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "related_database_name", this);
        }

        public StrColumnBuilder enterRelatedDatabaseCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "related_database_code", this);
        }

        public StrColumnBuilder enterReplacePdbId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "replace_pdb_id", this);
        }

    }

    public static class PdbxDataProcessingStatusBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_data_processing_status";

        public PdbxDataProcessingStatusBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterTaskName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "task_name", this);
        }

        public StrColumnBuilder enterStatus() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "status", this);
        }

    }

    public static class PdbxEntityInstanceFeatureBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_entity_instance_feature";

        public PdbxEntityInstanceFeatureBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterFeatureType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "feature_type", this);
        }

        public StrColumnBuilder enterAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id", this);
        }

        public StrColumnBuilder enterAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "asym_id", this);
        }

        public StrColumnBuilder enterAuthSeqNum() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_num", this);
        }

        public IntColumnBuilder enterSeqNum() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "seq_num", this);
        }

        public StrColumnBuilder enterCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id", this);
        }

        public StrColumnBuilder enterAuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_comp_id", this);
        }

        public IntColumnBuilder enterOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal", this);
        }

    }

    public static class PdbxEntitySrcGenDepositorInfoBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_entity_src_gen_depositor_info";

        public PdbxEntitySrcGenDepositorInfoBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterSrcId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "src_id", this);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public StrColumnBuilder enterSeqType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "seq_type", this);
        }

        public IntColumnBuilder enterBegSeqNum() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "beg_seq_num", this);
        }

        public IntColumnBuilder enterEndSeqNum() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "end_seq_num", this);
        }

        public StrColumnBuilder enterGeneSrcGene() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "gene_src_gene", this);
        }

        public StrColumnBuilder enterGeneSrcScientificName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "gene_src_scientific_name", this);
        }

        public StrColumnBuilder enterHostOrgGene() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "host_org_gene", this);
        }

        public StrColumnBuilder enterHostOrgScientificName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "host_org_scientific_name", this);
        }

        public StrColumnBuilder enterHostOrgStrain() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "host_org_strain", this);
        }

        public IntColumnBuilder enterGeneSrcNcbiTaxonomyId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "gene_src_ncbi_taxonomy_id", this);
        }

        public IntColumnBuilder enterHostOrgNcbiTaxonomyId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "host_org_ncbi_taxonomy_id", this);
        }

        public StrColumnBuilder enterHostOrgVectorType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "host_org_vector_type", this);
        }

        public StrColumnBuilder enterPlasmidName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "plasmid_name", this);
        }

    }

    public static class PdbxChemCompModelBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_chem_comp_model";

        public PdbxChemCompModelBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id", this);
        }

    }

    public static class PdbxChemCompModelAtomBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_chem_comp_model_atom";

        public PdbxChemCompModelAtomBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id", this);
        }

        public IntColumnBuilder enterOrdinalId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal_id", this);
        }

        public StrColumnBuilder enterModelId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "model_id", this);
        }

        public IntColumnBuilder enterCharge() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "charge", this);
        }

        public FloatColumnBuilder enterModelCartnX() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "model_Cartn_x", this);
        }

        public FloatColumnBuilder enterModelCartnY() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "model_Cartn_y", this);
        }

        public FloatColumnBuilder enterModelCartnZ() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "model_Cartn_z", this);
        }

        public StrColumnBuilder enterTypeSymbol() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type_symbol", this);
        }

    }

    public static class PdbxChemCompModelBondBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_chem_comp_model_bond";

        public PdbxChemCompModelBondBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterAtomId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id_1", this);
        }

        public StrColumnBuilder enterAtomId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id_2", this);
        }

        public StrColumnBuilder enterModelId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "model_id", this);
        }

        public StrColumnBuilder enterValueOrder() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "value_order", this);
        }

        public IntColumnBuilder enterOrdinalId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal_id", this);
        }

    }

    public static class PdbxChemCompModelFeatureBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_chem_comp_model_feature";

        public PdbxChemCompModelFeatureBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterModelId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "model_id", this);
        }

        public StrColumnBuilder enterFeatureName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "feature_name", this);
        }

        public StrColumnBuilder enterFeatureValue() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "feature_value", this);
        }

    }

    public static class PdbxChemCompModelDescriptorBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_chem_comp_model_descriptor";

        public PdbxChemCompModelDescriptorBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterModelId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "model_id", this);
        }

        public StrColumnBuilder enterDescriptor() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "descriptor", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

    }

    public static class PdbxChemCompModelAuditBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_chem_comp_model_audit";

        public PdbxChemCompModelAuditBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterModelId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "model_id", this);
        }

        public StrColumnBuilder enterDate() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date", this);
        }

        public StrColumnBuilder enterAnnotator() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "annotator", this);
        }

        public StrColumnBuilder enterProcessingSite() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "processing_site", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterActionType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "action_type", this);
        }

    }

    public static class PdbxChemCompModelReferenceBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_chem_comp_model_reference";

        public PdbxChemCompModelReferenceBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterModelId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "model_id", this);
        }

        public StrColumnBuilder enterDbName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "db_name", this);
        }

        public StrColumnBuilder enterDbCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "db_code", this);
        }

    }

    public static class PdbxViewCategoryGroupBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_view_category_group";

        public PdbxViewCategoryGroupBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterViewGroupId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "view_group_id", this);
        }

        public StrColumnBuilder enterDescription() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "description", this);
        }

    }

    public static class PdbxViewCategoryBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_view_category";

        public PdbxViewCategoryBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterViewGroupId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "view_group_id", this);
        }

        public StrColumnBuilder enterCategoryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "category_id", this);
        }

        public StrColumnBuilder enterCategoryViewName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "category_view_name", this);
        }

    }

    public static class PdbxViewItemBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_view_item";

        public PdbxViewItemBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterItemName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "item_name", this);
        }

        public StrColumnBuilder enterCategoryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "category_id", this);
        }

        public StrColumnBuilder enterItemViewName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "item_view_name", this);
        }

        public StrColumnBuilder enterItemViewMandatoryCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "item_view_mandatory_code", this);
        }

        public StrColumnBuilder enterItemViewAllowAlternateValue() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "item_view_allow_alternate_value", this);
        }

    }

    public static class PdbxCoordBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_coord";

        public PdbxCoordBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterChainAtomsYP() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "chain_atoms_Y_P", this);
        }

        public StrColumnBuilder enterHydrogenAtomsYN() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "hydrogen_atoms_Y_N", this);
        }

        public StrColumnBuilder enterSolventAtomsYN() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "solvent_atoms_Y_N", this);
        }

        public StrColumnBuilder enterStructureFactorsYN() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "structure_factors_Y_N", this);
        }

    }

    public static class PdbxConnectBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_connect";

        public PdbxConnectBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterResName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "res_name", this);
        }

        public StrColumnBuilder enterHetgroupName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "hetgroup_name", this);
        }

        public StrColumnBuilder enterFormul() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "formul", this);
        }

        public StrColumnBuilder enterHetgroupChemicalName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "hetgroup_chemical_name", this);
        }

        public StrColumnBuilder enterParentResidue() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "parent_residue", this);
        }

        public IntColumnBuilder enterFormalCharge() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "formal_charge", this);
        }

        public StrColumnBuilder enterClass1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "class_1", this);
        }

        public StrColumnBuilder enterClass2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "class_2", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public StrColumnBuilder enterStatus() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "status", this);
        }

        public StrColumnBuilder enterDate() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date", this);
        }

        public StrColumnBuilder enterModifiedDate() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "modified_date", this);
        }

    }

    public static class PdbxConnectTypeBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_connect_type";

        public PdbxConnectTypeBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterResName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "res_name", this);
        }

        public StrColumnBuilder enterNdbTokenType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ndbTokenType", this);
        }

        public StrColumnBuilder enterModified() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "modified", this);
        }

    }

    public static class PdbxConnectModificationBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_connect_modification";

        public PdbxConnectModificationBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterResName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "res_name", this);
        }

        public StrColumnBuilder enterModification() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "modification", this);
        }

    }

    public static class PdbxConnectAtomBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_connect_atom";

        public PdbxConnectAtomBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterResName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "res_name", this);
        }

        public StrColumnBuilder enterAtomName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_name", this);
        }

        public StrColumnBuilder enterConnectTo() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "connect_to", this);
        }

        public StrColumnBuilder enterTypeSymbol() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type_symbol", this);
        }

        public IntColumnBuilder enterCharge() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "charge", this);
        }

        public StrColumnBuilder enterBondType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "bond_type", this);
        }

        public IntColumnBuilder enterAlignPos() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "align_pos", this);
        }

    }

    public static class PdbxDatabasePDBMasterBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_database_PDB_master";

        public PdbxDatabasePDBMasterBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public IntColumnBuilder enterNumRemark() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_remark", this);
        }

        public IntColumnBuilder enterNumFtnote() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_ftnote", this);
        }

        public IntColumnBuilder enterNumHet() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_het", this);
        }

        public IntColumnBuilder enterNumHelix() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_helix", this);
        }

        public IntColumnBuilder enterNumSheet() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_sheet", this);
        }

        public IntColumnBuilder enterNumTurn() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_turn", this);
        }

        public IntColumnBuilder enterNumSite() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_site", this);
        }

        public IntColumnBuilder enterNumTrans() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_trans", this);
        }

        public IntColumnBuilder enterNumCoord() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_coord", this);
        }

        public IntColumnBuilder enterNumTer() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_ter", this);
        }

        public IntColumnBuilder enterNumConect() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_conect", this);
        }

        public IntColumnBuilder enterNumSeqres() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_seqres", this);
        }

    }

    public static class PdbxDatabasePdbOmitBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_database_pdb_omit";

        public PdbxDatabasePdbOmitBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterRecordName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "record_name", this);
        }

    }

    public static class PdbxDbrefBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_dbref";

        public PdbxDbrefBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterPdbIdCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdb_id_code", this);
        }

        public StrColumnBuilder enterChainId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "chain_id", this);
        }

        public StrColumnBuilder enterBeginResNumber() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "begin_res_number", this);
        }

        public StrColumnBuilder enterBeginInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "begin_ins_code", this);
        }

        public StrColumnBuilder enterEndResNumber() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "end_res_number", this);
        }

        public StrColumnBuilder enterEndInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "end_ins_code", this);
        }

        public StrColumnBuilder enterDatabaseName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "database_name", this);
        }

        public StrColumnBuilder enterDatabaseAccession() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "database_accession", this);
        }

        public StrColumnBuilder enterDatabaseIdCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "database_id_code", this);
        }

        public StrColumnBuilder enterDatabaseBeginResNumber() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "database_begin_res_number", this);
        }

        public StrColumnBuilder enterDatabaseBeginInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "database_begin_ins_code", this);
        }

        public StrColumnBuilder enterDatabaseEndResNumber() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "database_end_res_number", this);
        }

        public StrColumnBuilder enterDatabaseEndInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "database_end_ins_code", this);
        }

    }

    public static class PdbxDrugInfoBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_drug_info";

        public PdbxDrugInfoBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public IntColumnBuilder enterNumPerAsymUnit() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_per_asym_unit", this);
        }

        public IntColumnBuilder enterNumOfWholeMolecule() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_of_whole_molecule", this);
        }

        public StrColumnBuilder enterSizeOfMoleculePerAsymUnit() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "size_of_molecule_per_asym_unit", this);
        }

    }

    public static class PdbxInhibitorInfoBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_inhibitor_info";

        public PdbxInhibitorInfoBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public IntColumnBuilder enterNumPerAsymUnit() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_per_asym_unit", this);
        }

    }

    public static class PdbxIonInfoBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_ion_info";

        public PdbxIonInfoBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public IntColumnBuilder enterNumbPerAsymUnit() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "numb_per_asym_unit", this);
        }

    }

    public static class PdbxHybridBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_hybrid";

        public PdbxHybridBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterSugarName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "sugar_name", this);
        }

        public StrColumnBuilder enterStrandId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "strand_id", this);
        }

        public StrColumnBuilder enterResidueNames() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "residue_names", this);
        }

    }

    public static class PdbxNaStrandInfoBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_na_strand_info";

        public PdbxNaStrandInfoBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterNumOfNAStrandsPerAsymUnit() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_of_NA_strands_per_asym_unit", this);
        }

        public IntColumnBuilder enterNumOfNAStrandsPerBiolUnit() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_of_NA_strands_per_biol_unit", this);
        }

        public StrColumnBuilder enterFractNAStrandPerAsymUnit() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "fract_NA_strand_per_asym_unit", this);
        }

    }

    public static class PdbxNonstandardListBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_nonstandard_list";

        public PdbxNonstandardListBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id", this);
        }

        public StrColumnBuilder enterAuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id", this);
        }

        public StrColumnBuilder enterLabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_asym_id", this);
        }

        public StrColumnBuilder enterLabelSeqNum() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_seq_num", this);
        }

        public IntColumnBuilder enterLabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "label_seq_id", this);
        }

        public StrColumnBuilder enterInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ins_code", this);
        }

        public IntColumnBuilder enterNumberAtomsNh() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number_atoms_nh", this);
        }

    }

    public static class PdbxPdbCompndBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_pdb_compnd";

        public PdbxPdbCompndBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterText() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "text", this);
        }

    }

    public static class PdbxPdbSourceBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_pdb_source";

        public PdbxPdbSourceBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterText() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "text", this);
        }

    }

    public static class PdbxProteinInfoBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_protein_info";

        public PdbxProteinInfoBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public IntColumnBuilder enterNumPerAsymUnit() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_per_asym_unit", this);
        }

    }

    public static class PdbxSolventInfoBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_solvent_info";

        public PdbxSolventInfoBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public IntColumnBuilder enterNumbPerAsymUnit() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "numb_per_asym_unit", this);
        }

    }

    public static class PdbxSourceBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_source";

        public PdbxSourceBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterSrcMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "src_method", this);
        }

    }

    public static class PdbxStructBiolFuncBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_struct_biol_func";

        public PdbxStructBiolFuncBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterBiolId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "biol_id", this);
        }

        public StrColumnBuilder enterFunction() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "function", this);
        }

    }

    public static class PdbxStructPackGenBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_struct_pack_gen";

        public PdbxStructPackGenBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "asym_id", this);
        }

        public StrColumnBuilder enterSymmetry() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "symmetry", this);
        }

        public FloatColumnBuilder enterColorRed() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "color_red", this);
        }

        public FloatColumnBuilder enterColorGreen() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "color_green", this);
        }

        public FloatColumnBuilder enterColorBlue() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "color_blue", this);
        }

        public IntColumnBuilder enterCrystalType() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "crystal_type", this);
        }

        public IntColumnBuilder enterPackingType() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "packing_type", this);
        }

    }

    public static class PdbxTrnaInfoBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_trna_info";

        public PdbxTrnaInfoBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public IntColumnBuilder enterNumPerAsymUnit() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_per_asym_unit", this);
        }

    }

    public static class PdbxUnpairBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_unpair";

        public PdbxUnpairBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterChainId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "chain_id", this);
        }

        public StrColumnBuilder enterResidueName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "residue_name", this);
        }

        public StrColumnBuilder enterResidueNumber() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "residue_number", this);
        }

    }

    public static class PdbxRefineLsRestrNcsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_refine_ls_restr_ncs";

        public PdbxRefineLsRestrNcsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "dom_id", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public IntColumnBuilder enterNumber() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number", this);
        }

        public FloatColumnBuilder enterRmsDev() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rms_dev", this);
        }

        public FloatColumnBuilder enterWeight() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "weight", this);
        }

    }

    public static class PdbxStructNcsVirusGenBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_struct_ncs_virus_gen";

        public PdbxStructNcsVirusGenBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterOperId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "oper_id", this);
        }

        public StrColumnBuilder enterAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "asym_id", this);
        }

        public StrColumnBuilder enterPdbChainId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdb_chain_id", this);
        }

    }

    public static class PdbxSequenceAnnotationBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_sequence_annotation";

        public PdbxSequenceAnnotationBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterPdbChainId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdb_chain_id", this);
        }

        public StrColumnBuilder enterNcbiTaxid() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ncbi_taxid", this);
        }

    }

    public static class PdbxPostProcessDetailsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_post_process_details";

        public PdbxPostProcessDetailsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterText() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "text", this);
        }

        public StrColumnBuilder enterSeqDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "seq_details", this);
        }

    }

    public static class PdbxPostProcessStatusBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_post_process_status";

        public PdbxPostProcessStatusBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterCycleId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "cycle_id", this);
        }

        public StrColumnBuilder enterDateBegin() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date_begin", this);
        }

        public StrColumnBuilder enterDateEnd() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date_end", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterAnnotator() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "annotator", this);
        }

    }

    public static class PdbxStructLinkBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_struct_link";

        public PdbxStructLinkBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public StrColumnBuilder enterPtnr1LabelAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr1_label_alt_id", this);
        }

        public StrColumnBuilder enterPtnr1LabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr1_label_asym_id", this);
        }

        public StrColumnBuilder enterPtnr1LabelAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr1_label_atom_id", this);
        }

        public StrColumnBuilder enterPtnr1LabelCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr1_label_comp_id", this);
        }

        public IntColumnBuilder enterPtnr1LabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ptnr1_label_seq_id", this);
        }

        public StrColumnBuilder enterPtnr1LabelInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr1_label_ins_code", this);
        }

        public StrColumnBuilder enterPtnr1Symmetry() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr1_symmetry", this);
        }

        public StrColumnBuilder enterPtnr2LabelAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr2_label_alt_id", this);
        }

        public StrColumnBuilder enterPtnr2LabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr2_label_asym_id", this);
        }

        public StrColumnBuilder enterPtnr2LabelAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr2_label_atom_id", this);
        }

        public StrColumnBuilder enterPtnr2LabelCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr2_label_comp_id", this);
        }

        public IntColumnBuilder enterPtnr2LabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ptnr2_label_seq_id", this);
        }

        public StrColumnBuilder enterPtnr2LabelInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr2_label_ins_code", this);
        }

        public StrColumnBuilder enterPtnr2Symmetry() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ptnr2_symmetry", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public FloatColumnBuilder enterPdbxDistValue() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pdbx_dist_value", this);
        }

    }

    public static class PdbxMissingResidueListBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_missing_residue_list";

        public PdbxMissingResidueListBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterPdbModelId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdb_model_id", this);
        }

        public StrColumnBuilder enterPdbChainId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdb_chain_id", this);
        }

        public StrColumnBuilder enterPdbResidueName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdb_residue_name", this);
        }

        public StrColumnBuilder enterPdbResidueNumber() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdb_residue_number", this);
        }

        public StrColumnBuilder enterPdbInsertionCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdb_insertion_code", this);
        }

        public IntColumnBuilder enterLabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "label_seq_id", this);
        }

    }

    public static class PdbxDataProcessingCellBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_data_processing_cell";

        public PdbxDataProcessingCellBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public FloatColumnBuilder enterA() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "a", this);
        }

        public FloatColumnBuilder enterATolerance() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "a_tolerance", this);
        }

        public FloatColumnBuilder enterB() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "b", this);
        }

        public FloatColumnBuilder enterBTolerance() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "b_tolerance", this);
        }

        public FloatColumnBuilder enterC() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "c", this);
        }

        public FloatColumnBuilder enterCTolerance() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "c_tolerance", this);
        }

        public FloatColumnBuilder enterAlpha() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "alpha", this);
        }

        public FloatColumnBuilder enterAlphaTolerance() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "alpha_tolerance", this);
        }

        public FloatColumnBuilder enterBeta() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "beta", this);
        }

        public FloatColumnBuilder enterBetaTolerance() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "beta_tolerance", this);
        }

        public FloatColumnBuilder enterGamma() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "gamma", this);
        }

        public FloatColumnBuilder enterGammaTolerance() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "gamma_tolerance", this);
        }

        public FloatColumnBuilder enterVolume() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "volume", this);
        }

        public FloatColumnBuilder enterMosaicity() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "mosaicity", this);
        }

        public StrColumnBuilder enterResolutionRange() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "resolution_range", this);
        }

        public StrColumnBuilder enterSpaceGroup() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "space_group", this);
        }

    }

    public static class PdbxDataProcessingReflnsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_data_processing_reflns";

        public PdbxDataProcessingReflnsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public IntColumnBuilder enterNumberAll() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number_all", this);
        }

        public IntColumnBuilder enterNumberMarkedReject() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number_marked_reject", this);
        }

        public FloatColumnBuilder enterPercentMarkedReject() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "percent_marked_reject", this);
        }

        public FloatColumnBuilder enterPercentRejected() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "percent_rejected", this);
        }

        public FloatColumnBuilder enterRFactorAllLinear() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "R_factor_all_linear", this);
        }

    }

    public static class PdbxDataProcessingDetectorBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_data_processing_detector";

        public PdbxDataProcessingDetectorBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public FloatColumnBuilder enterWavelength() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "wavelength", this);
        }

        public FloatColumnBuilder enterPolarization() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "polarization", this);
        }

        public FloatColumnBuilder enterBeamPositionX() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "beam_position_x", this);
        }

        public FloatColumnBuilder enterBeamPositionY() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "beam_position_y", this);
        }

        public FloatColumnBuilder enterCassetteRotX() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "cassette_rot_x", this);
        }

        public FloatColumnBuilder enterCassetteRotY() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "cassette_rot_y", this);
        }

        public FloatColumnBuilder enterCassetteRotZ() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "cassette_rot_z", this);
        }

        public FloatColumnBuilder enterScaleY() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "scale_y", this);
        }

        public FloatColumnBuilder enterSkew() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "skew", this);
        }

        public FloatColumnBuilder enterCrossfireX() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "crossfire_x", this);
        }

        public FloatColumnBuilder enterCrossfireY() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "crossfire_y", this);
        }

        public FloatColumnBuilder enterCrossfireXy() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "crossfire_xy", this);
        }

        public StrColumnBuilder enterDate() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "date", this);
        }

        public StrColumnBuilder enterExperimentor() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "experimentor", this);
        }

        public StrColumnBuilder enterCrystalDataId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "crystal_data_id", this);
        }

        public StrColumnBuilder enterProcessingPath() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "processing_path", this);
        }

        public StrColumnBuilder enterProcessingFiles() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "processing_files", this);
        }

    }

    public static class PdbxChemCompNonstandardBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_chem_comp_nonstandard";

        public PdbxChemCompNonstandardBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

    }

    public static class PdbxEntityPolyProteinClassBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_entity_poly_protein_class";

        public PdbxEntityPolyProteinClassBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public StrColumnBuilder enterClazz() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "class", this);
        }

    }

    public static class PdbxEntityNameTaxonomyTreeBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_entity_name_taxonomy_tree";

        public PdbxEntityNameTaxonomyTreeBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterParentId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "parent_id", this);
        }

    }

    public static class PdbxEntityNameTaxonomyBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_entity_name_taxonomy";

        public PdbxEntityNameTaxonomyBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public StrColumnBuilder enterNameType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name_type", this);
        }

    }

    public static class PdbxEntityNameInstanceBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_entity_name_instance";

        public PdbxEntityNameInstanceBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public StrColumnBuilder enterPdbId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdb_id", this);
        }

        public StrColumnBuilder enterRcsbId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "rcsb_id", this);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public StrColumnBuilder enterPdbChainId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdb_chain_id", this);
        }

        public StrColumnBuilder enterPdbMolId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdb_mol_id", this);
        }

    }

    public static class PdbxTableinfoBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_tableinfo";

        public PdbxTableinfoBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterTablename() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "tablename", this);
        }

        public StrColumnBuilder enterDescription() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "description", this);
        }

        public IntColumnBuilder enterType() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public IntColumnBuilder enterTableSerialNo() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "table_serial_no", this);
        }

        public StrColumnBuilder enterGroupName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "group_name", this);
        }

        public IntColumnBuilder enterWWWSelectionCriteria() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "WWW_Selection_Criteria", this);
        }

        public IntColumnBuilder enterWWWReportCriteria() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "WWW_Report_Criteria", this);
        }

    }

    public static class PdbxColumninfoBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_columninfo";

        public PdbxColumninfoBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterColumnname() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "columnname", this);
        }

        public StrColumnBuilder enterTablename() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "tablename", this);
        }

        public StrColumnBuilder enterDescription() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "description", this);
        }

        public StrColumnBuilder enterExample() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "example", this);
        }

        public IntColumnBuilder enterType() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public IntColumnBuilder enterTableSerialNo() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "table_serial_no", this);
        }

        public IntColumnBuilder enterColumnSerialNo() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "column_serial_no", this);
        }

        public IntColumnBuilder enterWWWSelectionCriteria() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "WWW_Selection_Criteria", this);
        }

        public IntColumnBuilder enterWWWReportCriteria() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "WWW_Report_Criteria", this);
        }

    }

    public static class PdbxValAngleBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_val_angle";

        public PdbxValAngleBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterModelId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "model_id", this);
        }

        public StrColumnBuilder enterAuthAsymId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id_1", this);
        }

        public StrColumnBuilder enterAuthAtomId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_atom_id_1", this);
        }

        public StrColumnBuilder enterAuthCompId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_comp_id_1", this);
        }

        public StrColumnBuilder enterAuthSeqId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id_1", this);
        }

        public StrColumnBuilder enterAuthAtomId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_atom_id_2", this);
        }

        public StrColumnBuilder enterAuthAsymId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id_2", this);
        }

        public StrColumnBuilder enterAuthCompId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_comp_id_2", this);
        }

        public StrColumnBuilder enterAuthSeqId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id_2", this);
        }

        public StrColumnBuilder enterAuthAtomId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_atom_id_3", this);
        }

        public StrColumnBuilder enterAuthAsymId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id_3", this);
        }

        public StrColumnBuilder enterAuthCompId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_comp_id_3", this);
        }

        public StrColumnBuilder enterAuthSeqId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id_3", this);
        }

        public StrColumnBuilder enterAuthPDBInsertId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_PDB_insert_id_1", this);
        }

        public StrColumnBuilder enterAuthPDBInsertId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_PDB_insert_id_2", this);
        }

        public StrColumnBuilder enterAuthPDBInsertId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_PDB_insert_id_3", this);
        }

        public StrColumnBuilder enterLabelAltId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_alt_id_1", this);
        }

        public StrColumnBuilder enterLabelAsymId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_asym_id_1", this);
        }

        public StrColumnBuilder enterLabelAtomId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_atom_id_1", this);
        }

        public StrColumnBuilder enterLabelCompId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_comp_id_1", this);
        }

        public IntColumnBuilder enterLabelSeqId1() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "label_seq_id_1", this);
        }

        public StrColumnBuilder enterLabelAltId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_alt_id_2", this);
        }

        public StrColumnBuilder enterLabelAsymId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_asym_id_2", this);
        }

        public StrColumnBuilder enterLabelAtomId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_atom_id_2", this);
        }

        public StrColumnBuilder enterLabelCompId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_comp_id_2", this);
        }

        public IntColumnBuilder enterLabelSeqId2() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "label_seq_id_2", this);
        }

        public StrColumnBuilder enterLabelAltId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_alt_id_3", this);
        }

        public StrColumnBuilder enterLabelAsymId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_asym_id_3", this);
        }

        public StrColumnBuilder enterLabelAtomId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_atom_id_3", this);
        }

        public StrColumnBuilder enterLabelCompId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_comp_id_3", this);
        }

        public IntColumnBuilder enterLabelSeqId3() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "label_seq_id_3", this);
        }

        public FloatColumnBuilder enterAngle() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "angle", this);
        }

        public FloatColumnBuilder enterAngleDeviation() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "angle_deviation", this);
        }

    }

    public static class PdbxValBondBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_val_bond";

        public PdbxValBondBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterModelId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "model_id", this);
        }

        public StrColumnBuilder enterAuthAsymId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id_1", this);
        }

        public StrColumnBuilder enterAuthAtomId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_atom_id_1", this);
        }

        public StrColumnBuilder enterAuthCompId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_comp_id_1", this);
        }

        public StrColumnBuilder enterAuthSeqId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id_1", this);
        }

        public StrColumnBuilder enterAuthAtomId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_atom_id_2", this);
        }

        public StrColumnBuilder enterAuthAsymId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id_2", this);
        }

        public StrColumnBuilder enterAuthCompId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_comp_id_2", this);
        }

        public StrColumnBuilder enterAuthSeqId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id_2", this);
        }

        public StrColumnBuilder enterAuthPDBInsertId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_PDB_insert_id_1", this);
        }

        public StrColumnBuilder enterAuthPDBInsertId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_PDB_insert_id_2", this);
        }

        public StrColumnBuilder enterLabelAltId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_alt_id_1", this);
        }

        public StrColumnBuilder enterLabelAsymId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_asym_id_1", this);
        }

        public StrColumnBuilder enterLabelAtomId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_atom_id_1", this);
        }

        public StrColumnBuilder enterLabelCompId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_comp_id_1", this);
        }

        public IntColumnBuilder enterLabelSeqId1() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "label_seq_id_1", this);
        }

        public StrColumnBuilder enterLabelAltId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_alt_id_2", this);
        }

        public StrColumnBuilder enterLabelAsymId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_asym_id_2", this);
        }

        public StrColumnBuilder enterLabelAtomId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_atom_id_2", this);
        }

        public StrColumnBuilder enterLabelCompId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_comp_id_2", this);
        }

        public IntColumnBuilder enterLabelSeqId2() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "label_seq_id_2", this);
        }

        public FloatColumnBuilder enterBond() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "bond", this);
        }

        public FloatColumnBuilder enterBondDeviation() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "bond_deviation", this);
        }

    }

    public static class PdbxValContactBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_val_contact";

        public PdbxValContactBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterModelId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "model_id", this);
        }

        public StrColumnBuilder enterAuthAsymId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id_1", this);
        }

        public StrColumnBuilder enterAuthAtomId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_atom_id_1", this);
        }

        public StrColumnBuilder enterAuthCompId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_comp_id_1", this);
        }

        public StrColumnBuilder enterAuthSeqId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id_1", this);
        }

        public StrColumnBuilder enterAuthAtomId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_atom_id_2", this);
        }

        public StrColumnBuilder enterAuthAsymId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id_2", this);
        }

        public StrColumnBuilder enterAuthCompId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_comp_id_2", this);
        }

        public StrColumnBuilder enterAuthSeqId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id_2", this);
        }

        public StrColumnBuilder enterAuthPDBInsertId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_PDB_insert_id_1", this);
        }

        public StrColumnBuilder enterAuthPDBInsertId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_PDB_insert_id_2", this);
        }

        public StrColumnBuilder enterLabelAltId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_alt_id_1", this);
        }

        public StrColumnBuilder enterLabelAsymId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_asym_id_1", this);
        }

        public StrColumnBuilder enterLabelAtomId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_atom_id_1", this);
        }

        public StrColumnBuilder enterLabelCompId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_comp_id_1", this);
        }

        public IntColumnBuilder enterLabelSeqId1() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "label_seq_id_1", this);
        }

        public StrColumnBuilder enterLabelAltId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_alt_id_2", this);
        }

        public StrColumnBuilder enterLabelAsymId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_asym_id_2", this);
        }

        public StrColumnBuilder enterLabelAtomId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_atom_id_2", this);
        }

        public StrColumnBuilder enterLabelCompId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_comp_id_2", this);
        }

        public IntColumnBuilder enterLabelSeqId2() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "label_seq_id_2", this);
        }

        public FloatColumnBuilder enterDist() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "dist", this);
        }

    }

    public static class PdbxValSymContactBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_val_sym_contact";

        public PdbxValSymContactBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterModelId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "model_id", this);
        }

        public StrColumnBuilder enterAuthAsymId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id_1", this);
        }

        public StrColumnBuilder enterAuthAtomId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_atom_id_1", this);
        }

        public StrColumnBuilder enterAuthCompId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_comp_id_1", this);
        }

        public StrColumnBuilder enterAuthSeqId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id_1", this);
        }

        public StrColumnBuilder enterAuthAtomId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_atom_id_2", this);
        }

        public StrColumnBuilder enterAuthAsymId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id_2", this);
        }

        public StrColumnBuilder enterAuthCompId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_comp_id_2", this);
        }

        public StrColumnBuilder enterAuthSeqId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id_2", this);
        }

        public StrColumnBuilder enterAuthPDBInsertId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_PDB_insert_id_1", this);
        }

        public StrColumnBuilder enterAuthPDBInsertId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_PDB_insert_id_2", this);
        }

        public StrColumnBuilder enterLabelAltId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_alt_id_1", this);
        }

        public StrColumnBuilder enterLabelAsymId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_asym_id_1", this);
        }

        public StrColumnBuilder enterLabelAtomId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_atom_id_1", this);
        }

        public StrColumnBuilder enterLabelCompId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_comp_id_1", this);
        }

        public IntColumnBuilder enterLabelSeqId1() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "label_seq_id_1", this);
        }

        public StrColumnBuilder enterLabelAltId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_alt_id_2", this);
        }

        public StrColumnBuilder enterLabelAsymId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_asym_id_2", this);
        }

        public StrColumnBuilder enterLabelAtomId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_atom_id_2", this);
        }

        public StrColumnBuilder enterLabelCompId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_comp_id_2", this);
        }

        public IntColumnBuilder enterLabelSeqId2() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "label_seq_id_2", this);
        }

        public StrColumnBuilder enterSiteSymmetry1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "site_symmetry_1", this);
        }

        public StrColumnBuilder enterSiteSymmetry2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "site_symmetry_2", this);
        }

        public FloatColumnBuilder enterDist() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "dist", this);
        }

    }

    public static class PdbxRmchOutlierBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_rmch_outlier";

        public PdbxRmchOutlierBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterModelId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "model_id", this);
        }

        public StrColumnBuilder enterAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id", this);
        }

        public StrColumnBuilder enterAuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_comp_id", this);
        }

        public StrColumnBuilder enterAuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id", this);
        }

        public StrColumnBuilder enterAuthPDBInsertId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_PDB_insert_id", this);
        }

        public StrColumnBuilder enterLabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_asym_id", this);
        }

        public StrColumnBuilder enterLabelCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_comp_id", this);
        }

        public IntColumnBuilder enterLabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "label_seq_id", this);
        }

        public FloatColumnBuilder enterPhi() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "phi", this);
        }

        public FloatColumnBuilder enterPsi() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "psi", this);
        }

    }

    public static class PdbxMissingAtomPolyBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_missing_atom_poly";

        public PdbxMissingAtomPolyBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterModelId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "model_id", this);
        }

        public StrColumnBuilder enterAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id", this);
        }

        public StrColumnBuilder enterAuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_comp_id", this);
        }

        public StrColumnBuilder enterAuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id", this);
        }

        public StrColumnBuilder enterAuthPDBInsertId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_PDB_insert_id", this);
        }

        public StrColumnBuilder enterLabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_asym_id", this);
        }

        public StrColumnBuilder enterLabelCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_comp_id", this);
        }

        public IntColumnBuilder enterLabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "label_seq_id", this);
        }

        public StrColumnBuilder enterAtomName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_name", this);
        }

    }

    public static class PdbxMissingAtomNonpolyBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_missing_atom_nonpoly";

        public PdbxMissingAtomNonpolyBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterModelId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "model_id", this);
        }

        public StrColumnBuilder enterAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id", this);
        }

        public StrColumnBuilder enterAuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_comp_id", this);
        }

        public StrColumnBuilder enterAuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id", this);
        }

        public StrColumnBuilder enterAuthPDBInsertId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_PDB_insert_id", this);
        }

        public StrColumnBuilder enterLabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_asym_id", this);
        }

        public StrColumnBuilder enterLabelCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_comp_id", this);
        }

        public StrColumnBuilder enterAtomName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_name", this);
        }

    }

    public static class PdbxValChiralBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_val_chiral";

        public PdbxValChiralBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterModelId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "model_id", this);
        }

        public StrColumnBuilder enterAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id", this);
        }

        public StrColumnBuilder enterAuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_comp_id", this);
        }

        public StrColumnBuilder enterAuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id", this);
        }

        public StrColumnBuilder enterAuthPDBInsertId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_PDB_insert_id", this);
        }

        public StrColumnBuilder enterLabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_asym_id", this);
        }

        public StrColumnBuilder enterLabelCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_comp_id", this);
        }

        public IntColumnBuilder enterLabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "label_seq_id", this);
        }

        public StrColumnBuilder enterChiralCenterAtomName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "chiral_center_atom_name", this);
        }

        public StrColumnBuilder enterChiralNeighborAtomName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "chiral_neighbor_atom_name", this);
        }

        public StrColumnBuilder enterChiralCenterAtomAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "chiral_center_atom_alt_id", this);
        }

        public StrColumnBuilder enterChiralNeighborAtomAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "chiral_neighbor_atom_alt_id", this);
        }

    }

    public static class PdbxAtlasBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_atlas";

        public PdbxAtlasBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public IntColumnBuilder enterPageId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "page_id", this);
        }

        public StrColumnBuilder enterPageName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "page_name", this);
        }

    }

    public static class PdbxSummaryFlagsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_summary_flags";

        public PdbxSummaryFlagsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterFlagId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "flag_id", this);
        }

        public StrColumnBuilder enterFlagValue() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "flag_value", this);
        }

    }

    public static class PdbxEntityFuncBindModeBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_entity_func_bind_mode";

        public PdbxEntityFuncBindModeBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterDomainId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "domain_id", this);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public StrColumnBuilder enterProteinBindsTo() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "protein_binds_to", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

    }

    public static class PdbxEntityFuncEnzymeBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_entity_func_enzyme";

        public PdbxEntityFuncEnzymeBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterBindModeId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "bind_mode_id", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

    }

    public static class PdbxEntityFuncRegulatoryBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_entity_func_regulatory";

        public PdbxEntityFuncRegulatoryBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterBindModeId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "bind_mode_id", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

    }

    public static class PdbxEntityFuncStructuralBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_entity_func_structural";

        public PdbxEntityFuncStructuralBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterBindModeId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "bind_mode_id", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

    }

    public static class PdbxEntityFuncOtherBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_entity_func_other";

        public PdbxEntityFuncOtherBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterBindModeId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "bind_mode_id", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

    }

    public static class PdbxEntityPolyDomainBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_entity_poly_domain";

        public PdbxEntityPolyDomainBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public StrColumnBuilder enterBeginMonId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "begin_mon_id", this);
        }

        public IntColumnBuilder enterBeginSeqNum() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "begin_seq_num", this);
        }

        public StrColumnBuilder enterEndMonId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "end_mon_id", this);
        }

        public IntColumnBuilder enterEndSeqNum() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "end_seq_num", this);
        }

    }

    public static class PdbxNaStructKeywdsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_na_struct_keywds";

        public PdbxNaStructKeywdsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterConformationType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "conformation_type", this);
        }

        public StrColumnBuilder enterStrandDescription() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "strand_description", this);
        }

        public StrColumnBuilder enterSpecialFeature() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "special_feature", this);
        }

    }

    public static class PdbxEntityPolyNaTypeBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_entity_poly_na_type";

        public PdbxEntityPolyNaTypeBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

    }

    public static class PdbxEntityPolyNaNonstandardBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_entity_poly_na_nonstandard";

        public PdbxEntityPolyNaNonstandardBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public StrColumnBuilder enterFeature() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "feature", this);
        }

    }

    public static class PdbxVirtualAngleBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_virtual_angle";

        public PdbxVirtualAngleBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterModelId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "model_id", this);
        }

        public StrColumnBuilder enterAtomSiteId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAltId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_alt_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAtomId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_atom_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteLabelCompId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_comp_id_1", this);
        }

        public IntColumnBuilder enterAtomSiteLabelSeqId1() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_seq_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAsymId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_asym_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAltId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_alt_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAtomId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_atom_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteLabelCompId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_comp_id_2", this);
        }

        public IntColumnBuilder enterAtomSiteLabelSeqId2() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_seq_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAsymId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_asym_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_id_3", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAltId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_alt_id_3", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAtomId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_atom_id_3", this);
        }

        public StrColumnBuilder enterAtomSiteLabelCompId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_comp_id_3", this);
        }

        public IntColumnBuilder enterAtomSiteLabelSeqId3() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_seq_id_3", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAsymId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_asym_id_3", this);
        }

        public StrColumnBuilder enterAtomSiteAuthAsymId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_asym_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteAuthAtomId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_atom_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteAuthCompId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_comp_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteAuthSeqId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_seq_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteAuthAtomId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_atom_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteAuthAsymId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_asym_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteAuthCompId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_comp_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteAuthSeqId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_seq_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteAuthAtomId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_atom_id_3", this);
        }

        public StrColumnBuilder enterAtomSiteAuthAsymId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_asym_id_3", this);
        }

        public StrColumnBuilder enterAtomSiteAuthCompId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_comp_id_3", this);
        }

        public StrColumnBuilder enterAtomSiteAuthSeqId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_seq_id_3", this);
        }

        public StrColumnBuilder enterSiteSymmetry1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "site_symmetry_1", this);
        }

        public StrColumnBuilder enterSiteSymmetry2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "site_symmetry_2", this);
        }

        public StrColumnBuilder enterSiteSymmetry3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "site_symmetry_3", this);
        }

        public FloatColumnBuilder enterValue() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "value", this);
        }

        public FloatColumnBuilder enterValueEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "value_esd", this);
        }

    }

    public static class PdbxVirtualBondBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_virtual_bond";

        public PdbxVirtualBondBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterModelId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "model_id", this);
        }

        public StrColumnBuilder enterAtomSiteId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAltId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_alt_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAtomId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_atom_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteLabelCompId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_comp_id_1", this);
        }

        public IntColumnBuilder enterAtomSiteLabelSeqId1() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_seq_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAsymId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_asym_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAltId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_alt_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAtomId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_atom_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteLabelCompId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_comp_id_2", this);
        }

        public IntColumnBuilder enterAtomSiteLabelSeqId2() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_seq_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAsymId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_asym_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteAuthAtomId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_atom_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteAuthAsymId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_asym_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteAuthCompId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_comp_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteAuthSeqId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_seq_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteAuthAtomId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_atom_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteAuthAsymId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_asym_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteAuthCompId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_comp_id_2", this);
        }

        public IntColumnBuilder enterAtomSiteAuthSeqId2() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_seq_id_2", this);
        }

        public FloatColumnBuilder enterDist() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "dist", this);
        }

        public FloatColumnBuilder enterDistEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "dist_esd", this);
        }

        public StrColumnBuilder enterSiteSymmetry1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "site_symmetry_1", this);
        }

        public StrColumnBuilder enterSiteSymmetry2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "site_symmetry_2", this);
        }

    }

    public static class PdbxVirtualTorsionBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_virtual_torsion";

        public PdbxVirtualTorsionBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterModelId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "model_id", this);
        }

        public StrColumnBuilder enterAtomSiteId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAltId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_alt_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAtomId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_atom_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteLabelCompId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_comp_id_1", this);
        }

        public IntColumnBuilder enterAtomSiteLabelSeqId1() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_seq_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAsymId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_asym_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAltId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_alt_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAtomId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_atom_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteLabelCompId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_comp_id_2", this);
        }

        public IntColumnBuilder enterAtomSiteLabelSeqId2() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_seq_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAsymId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_asym_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_id_3", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAltId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_alt_id_3", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAtomId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_atom_id_3", this);
        }

        public StrColumnBuilder enterAtomSiteLabelCompId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_comp_id_3", this);
        }

        public IntColumnBuilder enterAtomSiteLabelSeqId3() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_seq_id_3", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAsymId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_asym_id_3", this);
        }

        public StrColumnBuilder enterAtomSiteId4() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_id_4", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAltId4() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_alt_id_4", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAtomId4() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_atom_id_4", this);
        }

        public StrColumnBuilder enterAtomSiteLabelCompId4() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_comp_id_4", this);
        }

        public IntColumnBuilder enterAtomSiteLabelSeqId4() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_seq_id_4", this);
        }

        public StrColumnBuilder enterAtomSiteLabelAsymId4() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_label_asym_id_4", this);
        }

        public StrColumnBuilder enterAtomSiteAuthAtomId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_atom_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteAuthAsymId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_asym_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteAuthCompId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_comp_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteAuthSeqId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_seq_id_1", this);
        }

        public StrColumnBuilder enterAtomSiteAuthAtomId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_atom_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteAuthAsymId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_asym_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteAuthCompId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_comp_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteAuthSeqId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_seq_id_2", this);
        }

        public StrColumnBuilder enterAtomSiteAuthAtomId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_atom_id_3", this);
        }

        public StrColumnBuilder enterAtomSiteAuthAsymId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_asym_id_3", this);
        }

        public StrColumnBuilder enterAtomSiteAuthCompId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_comp_id_3", this);
        }

        public StrColumnBuilder enterAtomSiteAuthSeqId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_seq_id_3", this);
        }

        public StrColumnBuilder enterAtomSiteAuthAtomId4() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_atom_id_4", this);
        }

        public StrColumnBuilder enterAtomSiteAuthAsymId4() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_asym_id_4", this);
        }

        public StrColumnBuilder enterAtomSiteAuthCompId4() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_comp_id_4", this);
        }

        public StrColumnBuilder enterAtomSiteAuthSeqId4() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_site_auth_seq_id_4", this);
        }

        public StrColumnBuilder enterSiteSymmetry1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "site_symmetry_1", this);
        }

        public StrColumnBuilder enterSiteSymmetry2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "site_symmetry_2", this);
        }

        public StrColumnBuilder enterSiteSymmetry3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "site_symmetry_3", this);
        }

        public StrColumnBuilder enterSiteSymmetry4() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "site_symmetry_4", this);
        }

        public FloatColumnBuilder enterValue() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "value", this);
        }

        public FloatColumnBuilder enterValueEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "value_esd", this);
        }

    }

    public static class PdbxSequencePatternBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_sequence_pattern";

        public PdbxSequencePatternBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterLabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_asym_id", this);
        }

        public StrColumnBuilder enterAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id", this);
        }

        public IntColumnBuilder enterPatternCount() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pattern_count", this);
        }

        public StrColumnBuilder enterSequencePattern() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "sequence_pattern", this);
        }

    }

    public static class PdbxStereochemistryBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_stereochemistry";

        public PdbxStereochemistryBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterModelId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "model_id", this);
        }

        public StrColumnBuilder enterAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id", this);
        }

        public StrColumnBuilder enterLabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_asym_id", this);
        }

        public StrColumnBuilder enterLabelCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_comp_id", this);
        }

        public StrColumnBuilder enterAuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id", this);
        }

        public IntColumnBuilder enterLabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "label_seq_id", this);
        }

        public StrColumnBuilder enterLabelAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_atom_id", this);
        }

        public StrColumnBuilder enterLabelAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_alt_id", this);
        }

        public StrColumnBuilder enterLabelAtomIdU() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_atom_id_u", this);
        }

        public StrColumnBuilder enterLabelAltIdU() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_alt_id_u", this);
        }

        public StrColumnBuilder enterLabelAtomIdV() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_atom_id_v", this);
        }

        public StrColumnBuilder enterLabelAltIdV() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_alt_id_v", this);
        }

        public StrColumnBuilder enterLabelAtomIdW() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_atom_id_w", this);
        }

        public StrColumnBuilder enterLabelAltIdW() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_alt_id_w", this);
        }

        public FloatColumnBuilder enterVolume3() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "volume3", this);
        }

        public FloatColumnBuilder enterAngleOutOfPlane() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "angle_out_of_plane", this);
        }

    }

    public static class PdbxRmsDevsCovalentBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_rms_devs_covalent";

        public PdbxRmsDevsCovalentBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public FloatColumnBuilder enterRmsBonds() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rms_bonds", this);
        }

        public IntColumnBuilder enterNumBonds() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_bonds", this);
        }

        public FloatColumnBuilder enterRmsBondsBase() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rms_bonds_base", this);
        }

        public IntColumnBuilder enterNumBondsBase() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_bonds_base", this);
        }

        public FloatColumnBuilder enterRmsBondsSugar() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rms_bonds_sugar", this);
        }

        public IntColumnBuilder enterNumBondsSugar() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_bonds_sugar", this);
        }

        public FloatColumnBuilder enterRmsBondsPhosphate() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rms_bonds_phosphate", this);
        }

        public IntColumnBuilder enterNumBondsPhosphate() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_bonds_phosphate", this);
        }

        public FloatColumnBuilder enterRmsAngles() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rms_angles", this);
        }

        public IntColumnBuilder enterNumAngles() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_angles", this);
        }

        public FloatColumnBuilder enterRmsAnglesBase() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rms_angles_base", this);
        }

        public IntColumnBuilder enterNumAnglesBase() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_angles_base", this);
        }

        public FloatColumnBuilder enterRmsAnglesSugar() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rms_angles_sugar", this);
        }

        public IntColumnBuilder enterNumAnglesSugar() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_angles_sugar", this);
        }

        public FloatColumnBuilder enterRmsAnglesPhosphate() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rms_angles_phosphate", this);
        }

        public IntColumnBuilder enterNumAnglesPhosphate() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_angles_phosphate", this);
        }

    }

    public static class PdbxRmsDevsCovByMonomerBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_rms_devs_cov_by_monomer";

        public PdbxRmsDevsCovByMonomerBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterModelId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "model_id", this);
        }

        public StrColumnBuilder enterAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id", this);
        }

        public StrColumnBuilder enterLabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_asym_id", this);
        }

        public StrColumnBuilder enterLabelCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_comp_id", this);
        }

        public StrColumnBuilder enterAuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id", this);
        }

        public IntColumnBuilder enterLabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "label_seq_id", this);
        }

        public FloatColumnBuilder enterRmsBonds() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rms_bonds", this);
        }

        public IntColumnBuilder enterNumBonds() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_bonds", this);
        }

        public FloatColumnBuilder enterRmsAngles() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rms_angles", this);
        }

        public IntColumnBuilder enterNumAngles() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_angles", this);
        }

    }

    public static class PdbxSugarPhosphateGeometryBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_sugar_phosphate_geometry";

        public PdbxSugarPhosphateGeometryBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterModelId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "model_id", this);
        }

        public StrColumnBuilder enterAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id", this);
        }

        public StrColumnBuilder enterLabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_asym_id", this);
        }

        public StrColumnBuilder enterLabelCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_comp_id", this);
        }

        public StrColumnBuilder enterAuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id", this);
        }

        public IntColumnBuilder enterLabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "label_seq_id", this);
        }

        public StrColumnBuilder enterNeighborCompId5prime() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "neighbor_comp_id_5prime", this);
        }

        public StrColumnBuilder enterNeighborCompId3prime() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "neighbor_comp_id_3prime", this);
        }

        public FloatColumnBuilder enterO3PO5C5() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "o3_p_o5_c5", this);
        }

        public FloatColumnBuilder enterPO5C5C4() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "p_o5_c5_c4", this);
        }

        public FloatColumnBuilder enterO5C5C4C3() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "o5_c5_c4_c3", this);
        }

        public FloatColumnBuilder enterC5C4C3O3() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "c5_c4_c3_o3", this);
        }

        public FloatColumnBuilder enterC4C3O3P() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "c4_c3_o3_p", this);
        }

        public FloatColumnBuilder enterC3O3PO5() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "c3_o3_p_o5", this);
        }

        public FloatColumnBuilder enterC4O4C1N19() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "c4_o4_c1_n1_9", this);
        }

        public FloatColumnBuilder enterO4C1N19C24() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "o4_c1_n1_9_c2_4", this);
        }

        public FloatColumnBuilder enterO4C1N19C68() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "o4_c1_n1_9_c6_8", this);
        }

        public FloatColumnBuilder enterC4O4C1C2() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "c4_o4_c1_c2", this);
        }

        public FloatColumnBuilder enterO4C1C2C3() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "o4_c1_c2_c3", this);
        }

        public FloatColumnBuilder enterC1C2C3C4() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "c1_c2_c3_c4", this);
        }

        public FloatColumnBuilder enterC2C3C4O4() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "c2_c3_c4_o4", this);
        }

        public FloatColumnBuilder enterC3C4O4C1() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "c3_c4_o4_c1", this);
        }

        public FloatColumnBuilder enterC5C4C3C2() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "c5_c4_c3_c2", this);
        }

        public FloatColumnBuilder enterO4C4C3O3() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "o4_c4_c3_o3", this);
        }

        public FloatColumnBuilder enterO3C3C2O2() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "o3_c3_c2_o2", this);
        }

        public FloatColumnBuilder enterO5C5C4O4() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "o5_c5_c4_o4", this);
        }

        public FloatColumnBuilder enterPseudorot() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pseudorot", this);
        }

        public FloatColumnBuilder enterMaxtorsion() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "maxtorsion", this);
        }

        public StrColumnBuilder enterNextLabelCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "next_label_comp_id", this);
        }

        public IntColumnBuilder enterNextLabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "next_label_seq_id", this);
        }

        public FloatColumnBuilder enterNextO3PO5C5() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "next_o3_p_o5_c5", this);
        }

        public FloatColumnBuilder enterNextPO5C5C4() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "next_p_o5_c5_c4", this);
        }

        public FloatColumnBuilder enterNextO5C5C4C3() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "next_o5_c5_c4_c3", this);
        }

        public FloatColumnBuilder enterNextC5C4C3O3() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "next_c5_c4_c3_o3", this);
        }

        public FloatColumnBuilder enterNextC4C3O3P() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "next_c4_c3_o3_p", this);
        }

        public FloatColumnBuilder enterNextC3O3PO5() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "next_c3_o3_p_o5", this);
        }

        public FloatColumnBuilder enterNextC4O4C1N19() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "next_c4_o4_c1_n1_9", this);
        }

        public FloatColumnBuilder enterNextO4C1N19C24() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "next_o4_c1_n1_9_c2_4", this);
        }

        public FloatColumnBuilder enterC1C2() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "c1_c2", this);
        }

        public FloatColumnBuilder enterC2C3() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "c2_c3", this);
        }

        public FloatColumnBuilder enterC3C4() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "c3_c4", this);
        }

        public FloatColumnBuilder enterC4O4() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "c4_o4", this);
        }

        public FloatColumnBuilder enterO4C1() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "o4_c1", this);
        }

        public FloatColumnBuilder enterPO5() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "p_o5", this);
        }

        public FloatColumnBuilder enterO5C5() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "o5_c5", this);
        }

        public FloatColumnBuilder enterC5C4() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "c5_c4", this);
        }

        public FloatColumnBuilder enterC3O3() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "c3_o3", this);
        }

        public FloatColumnBuilder enterO3P() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "o3_p", this);
        }

        public FloatColumnBuilder enterPO1p() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "p_o1p", this);
        }

        public FloatColumnBuilder enterPO2p() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "p_o2p", this);
        }

        public FloatColumnBuilder enterC1N91() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "c1_n9_1", this);
        }

        public FloatColumnBuilder enterN1C2() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "n1_c2", this);
        }

        public FloatColumnBuilder enterN1C6() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "n1_c6", this);
        }

        public FloatColumnBuilder enterN9C4() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "n9_c4", this);
        }

        public FloatColumnBuilder enterN9C8() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "n9_c8", this);
        }

        public FloatColumnBuilder enterC1C2C3() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "c1_c2_c3", this);
        }

        public FloatColumnBuilder enterC2C3C4() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "c2_c3_c4", this);
        }

        public FloatColumnBuilder enterC3C4O4() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "c3_c4_o4", this);
        }

        public FloatColumnBuilder enterC4O4C1() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "c4_o4_c1", this);
        }

        public FloatColumnBuilder enterO4C1C2() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "o4_c1_c2", this);
        }

        public FloatColumnBuilder enterPO5C5() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "p_o5_c5", this);
        }

        public FloatColumnBuilder enterO5C5C4() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "o5_c5_c4", this);
        }

        public FloatColumnBuilder enterC5C4C3() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "c5_c4_c3", this);
        }

        public FloatColumnBuilder enterC4C3O3() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "c4_c3_o3", this);
        }

        public FloatColumnBuilder enterC3O3P() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "c3_o3_p", this);
        }

        public FloatColumnBuilder enterO3PO5() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "o3_p_o5", this);
        }

        public FloatColumnBuilder enterO4C1N19() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "o4_c1_n1_9", this);
        }

        public FloatColumnBuilder enterC1N19C24() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "c1_n1_9_c2_4", this);
        }

        public FloatColumnBuilder enterC5C4O4() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "c5_c4_o4", this);
        }

        public FloatColumnBuilder enterC2C3O3() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "c2_c3_o3", this);
        }

        public FloatColumnBuilder enterO1pPO2p() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "o1p_p_o2p", this);
        }

        public FloatColumnBuilder enterC2C1N19() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "c2_c1_n1_9", this);
        }

        public FloatColumnBuilder enterC1N19C68() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "c1_n1_9_c6_8", this);
        }

    }

    public static class PdbxNmrComputingBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_nmr_computing";

        public PdbxNmrComputingBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterCollection() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "collection", this);
        }

        public StrColumnBuilder enterCollectionVersion() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "collection_version", this);
        }

        public StrColumnBuilder enterProcessing() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "processing", this);
        }

        public StrColumnBuilder enterProcessingVersion() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "processing_version", this);
        }

        public StrColumnBuilder enterDataAnalysis() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "data_analysis", this);
        }

        public StrColumnBuilder enterDataAnalysisVersion() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "data_analysis_version", this);
        }

        public StrColumnBuilder enterStructureSolution() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "structure_solution", this);
        }

        public StrColumnBuilder enterStructureSolutionVersion() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "structure_solution_version", this);
        }

        public StrColumnBuilder enterRefinement() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "refinement", this);
        }

        public StrColumnBuilder enterRefinementVersion() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "refinement_version", this);
        }

        public StrColumnBuilder enterIterativeRelaxationMatrix() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "iterative_relaxation_matrix", this);
        }

        public StrColumnBuilder enterIterativeRelaxationMatrixVersion() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "iterative_relaxation_matrix_version", this);
        }

    }

    public static class PdbxAuditConformExtensionBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_audit_conform_extension";

        public PdbxAuditConformExtensionBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterExtensionDictLocation() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "extension_dict_location", this);
        }

        public StrColumnBuilder enterExtensionDictName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "extension_dict_name", this);
        }

        public StrColumnBuilder enterExtensionDictVersion() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "extension_dict_version", this);
        }

    }

    public static class PdbxDccMapmanBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_dcc_mapman";

        public PdbxDccMapmanBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterPdbid() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbid", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class PdbxDccRsccMapmanBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_dcc_rscc_mapman";

        public PdbxDccRsccMapmanBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterModelId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "model_id", this);
        }

        public StrColumnBuilder enterPdbId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdb_id", this);
        }

        public StrColumnBuilder enterAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id", this);
        }

        public StrColumnBuilder enterAuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_comp_id", this);
        }

        public StrColumnBuilder enterAuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id", this);
        }

        public StrColumnBuilder enterLabelAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_alt_id", this);
        }

        public StrColumnBuilder enterLabelInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_ins_code", this);
        }

        public FloatColumnBuilder enterCorrelation() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "correlation", this);
        }

        public FloatColumnBuilder enterRealSpaceR() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "real_space_R", this);
        }

        public FloatColumnBuilder enterWeightedRealSpaceR() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "weighted_real_space_R", this);
        }

        public FloatColumnBuilder enterRealSpaceZscore() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "real_space_Zscore", this);
        }

        public FloatColumnBuilder enterBisoMean() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Biso_mean", this);
        }

        public FloatColumnBuilder enterOccupancyMean() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "occupancy_mean", this);
        }

        public StrColumnBuilder enterFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "flag", this);
        }

    }

    public static class PdbxDccRsccMapmanOverallBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_dcc_rscc_mapman_overall";

        public PdbxDccRsccMapmanOverallBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterPdbid() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbid", this);
        }

        public FloatColumnBuilder enterCorrelation() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "correlation", this);
        }

        public FloatColumnBuilder enterCorrelationSigma() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "correlation_sigma", this);
        }

        public FloatColumnBuilder enterRealSpaceR() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "real_space_R", this);
        }

        public FloatColumnBuilder enterRealSpaceRSigma() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "real_space_R_sigma", this);
        }

    }

    public static class PdbxDccDensityBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_dcc_density";

        public PdbxDccDensityBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDCCVersion() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "DCC_version", this);
        }

        public StrColumnBuilder enterPdbid() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbid", this);
        }

        public StrColumnBuilder enterPdbtype() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbtype", this);
        }

        public StrColumnBuilder enterUnitCell() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "unit_cell", this);
        }

        public StrColumnBuilder enterSpaceGroupNameH_M() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "space_group_name_H-M", this);
        }

        public StrColumnBuilder enterSpaceGroupPointless() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "space_group_pointless", this);
        }

        public FloatColumnBuilder enterLsDResHigh() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ls_d_res_high", this);
        }

        public FloatColumnBuilder enterLsDResHighSf() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ls_d_res_high_sf", this);
        }

        public FloatColumnBuilder enterLsDResLowSf() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ls_d_res_low_sf", this);
        }

        public FloatColumnBuilder enterRValueRWork() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "R_value_R_work", this);
        }

        public FloatColumnBuilder enterRValueRFree() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "R_value_R_free", this);
        }

        public IntColumnBuilder enterWorkingSetCount() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "working_set_count", this);
        }

        public IntColumnBuilder enterFreeSetCount() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "free_set_count", this);
        }

        public FloatColumnBuilder enterOccupancyMin() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "occupancy_min", this);
        }

        public FloatColumnBuilder enterOccupancyMax() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "occupancy_max", this);
        }

        public FloatColumnBuilder enterOccupancyMean() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "occupancy_mean", this);
        }

        public FloatColumnBuilder enterBisoMin() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Biso_min", this);
        }

        public FloatColumnBuilder enterBisoMax() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Biso_max", this);
        }

        public FloatColumnBuilder enterBisoMean() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Biso_mean", this);
        }

        public FloatColumnBuilder enterBWilson() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "B_wilson", this);
        }

        public FloatColumnBuilder enterBWilsonScale() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "B_wilson_scale", this);
        }

        public FloatColumnBuilder enterMeanI2OverMeanISquare() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "mean_I2_over_mean_I_square", this);
        }

        public FloatColumnBuilder enterMeanFSquareOverMeanF2() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "mean_F_square_over_mean_F2", this);
        }

        public FloatColumnBuilder enterMeanE21Abs() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "mean_E2_1_abs", this);
        }

        public FloatColumnBuilder enterPadilla_YeatesLMean() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Padilla-Yeates_L_mean", this);
        }

        public FloatColumnBuilder enterPadilla_YeatesL2Mean() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Padilla-Yeates_L2_mean", this);
        }

        public FloatColumnBuilder enterPadilla_YeatesL2MeanPointless() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Padilla-Yeates_L2_mean_pointless", this);
        }

        public FloatColumnBuilder enterZScoreLTest() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Z_score_L_test", this);
        }

        public StrColumnBuilder enterTwinType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "twin_type", this);
        }

        public StrColumnBuilder enterTwinOperatorXtriage() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "twin_operator_xtriage", this);
        }

        public FloatColumnBuilder enterTwinFractionXtriage() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "twin_fraction_xtriage", this);
        }

        public FloatColumnBuilder enterTwinRfactor() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "twin_Rfactor", this);
        }

        public FloatColumnBuilder enterIOverSigIResh() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "I_over_sigI_resh", this);
        }

        public FloatColumnBuilder enterIOverSigIDiff() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "I_over_sigI_diff", this);
        }

        public FloatColumnBuilder enterIOverSigIMean() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "I_over_sigI_mean", this);
        }

        public StrColumnBuilder enterIceRing() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ice_ring", this);
        }

        public FloatColumnBuilder enterAnisotropy() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "anisotropy", this);
        }

        public FloatColumnBuilder enterZ_score() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Z-score", this);
        }

        public FloatColumnBuilder enterProbPeakValue() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "prob_peak_value", this);
        }

        public StrColumnBuilder enterTranslationalPseudoSymmetry() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "translational_pseudo_symmetry", this);
        }

        public FloatColumnBuilder enterWavelength() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "wavelength", this);
        }

        public FloatColumnBuilder enterBSolvent() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "B_solvent", this);
        }

        public FloatColumnBuilder enterKSolvent() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "K_solvent", this);
        }

        public StrColumnBuilder enterTLSRefinementReported() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "TLS_refinement_reported", this);
        }

        public StrColumnBuilder enterPartialBValueCorrectionAttempted() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "partial_B_value_correction_attempted", this);
        }

        public StrColumnBuilder enterPartialBValueCorrectionSuccess() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "partial_B_value_correction_success", this);
        }

        public StrColumnBuilder enterReflectionStatusArchived() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "reflection_status_archived", this);
        }

        public StrColumnBuilder enterReflectionStatusUsed() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "reflection_status_used", this);
        }

        public StrColumnBuilder enterIsoBValueType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "iso_B_value_type", this);
        }

        public StrColumnBuilder enterReflnsTwin() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "reflns_twin", this);
        }

        public StrColumnBuilder enterTwinByXtriage() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "twin_by_xtriage", this);
        }

        public StrColumnBuilder enterTwinOperator() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "twin_operator", this);
        }

        public StrColumnBuilder enterTwinFraction() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "twin_fraction", this);
        }

        public IntColumnBuilder enterTlsGroupNumber() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "tls_group_number", this);
        }

        public IntColumnBuilder enterNcsGroupNumber() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ncs_group_number", this);
        }

        public IntColumnBuilder enterMtrixNumber() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "mtrix_number", this);
        }

        public FloatColumnBuilder enterMatthewCoeff() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Matthew_coeff", this);
        }

        public FloatColumnBuilder enterSolventContent() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "solvent_content", this);
        }

        public FloatColumnBuilder enterCruickshankDpiXyz() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Cruickshank_dpi_xyz", this);
        }

        public FloatColumnBuilder enterDpiFreeR() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "dpi_free_R", this);
        }

        public FloatColumnBuilder enterFom() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "fom", this);
        }

        public FloatColumnBuilder enterCorrelationOverall() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "correlation_overall", this);
        }

        public FloatColumnBuilder enterRealSpaceROverall() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "real_space_R_overall", this);
        }

        public IntColumnBuilder enterMFo_DFc_3sigmaPositive() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "mFo-DFc-3sigma_positive", this);
        }

        public IntColumnBuilder enterMFo_DFc_6sigmaPositive() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "mFo-DFc-6sigma_positive", this);
        }

        public IntColumnBuilder enterMFo_DFc_3sigmaNegative() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "mFo-DFc-3sigma_negative", this);
        }

        public IntColumnBuilder enterMFo_DFc_6sigmaNegative() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "mFo-DFc-6sigma_negative", this);
        }

        public FloatColumnBuilder enterBmean_Bwilson() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Bmean-Bwilson", this);
        }

        public FloatColumnBuilder enterRfree_Rwork() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Rfree-Rwork", this);
        }

        public StrColumnBuilder enterError() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "error", this);
        }

    }

    public static class PdbxDccGeometryBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_dcc_geometry";

        public PdbxDccGeometryBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterPdbid() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdbid", this);
        }

        public FloatColumnBuilder enterRamachandranOutlierPercent() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Ramachandran_outlier_percent", this);
        }

        public IntColumnBuilder enterRamachandranOutlierNumber() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "Ramachandran_outlier_number", this);
        }

        public FloatColumnBuilder enterRamachandranAllowedPercent() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Ramachandran_allowed_percent", this);
        }

        public IntColumnBuilder enterRamachandranAllowedNumber() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "Ramachandran_allowed_number", this);
        }

        public FloatColumnBuilder enterRamachandranFavoredPercent() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Ramachandran_favored_percent", this);
        }

        public IntColumnBuilder enterRamachandranFavoredNumber() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "Ramachandran_favored_number", this);
        }

        public FloatColumnBuilder enterRotamerOutliersPercent() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rotamer_outliers_percent", this);
        }

        public IntColumnBuilder enterRotamerOutliersNumber() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "rotamer_outliers_number", this);
        }

        public IntColumnBuilder enterCbetaDeviations() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "cbeta_deviations", this);
        }

        public FloatColumnBuilder enterAllAtomClashscore() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "all_atom_clashscore", this);
        }

        public FloatColumnBuilder enterOverallScore() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "overall_score", this);
        }

        public FloatColumnBuilder enterBondOverallRms() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "bond_overall_rms", this);
        }

        public FloatColumnBuilder enterBondOverallMax() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "bond_overall_max", this);
        }

        public FloatColumnBuilder enterBondLigandRms() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "bond_ligand_rms", this);
        }

        public FloatColumnBuilder enterBondLigandMax() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "bond_ligand_max", this);
        }

        public FloatColumnBuilder enterAngleOverallRms() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "angle_overall_rms", this);
        }

        public FloatColumnBuilder enterAngleOverallMax() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "angle_overall_max", this);
        }

        public FloatColumnBuilder enterAngleLigandRms() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "angle_ligand_rms", this);
        }

        public FloatColumnBuilder enterAngleLigandMax() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "angle_ligand_max", this);
        }

        public FloatColumnBuilder enterDihedralOverallRms() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "dihedral_overall_rms", this);
        }

        public FloatColumnBuilder enterDihedralOverallMax() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "dihedral_overall_max", this);
        }

        public FloatColumnBuilder enterChiralityOverallRms() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "chirality_overall_rms", this);
        }

        public FloatColumnBuilder enterChiralityOverallMax() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "chirality_overall_max", this);
        }

        public FloatColumnBuilder enterPlanarityOverallRms() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "planarity_overall_rms", this);
        }

        public FloatColumnBuilder enterPlanarityOverallMax() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "planarity_overall_max", this);
        }

        public FloatColumnBuilder enterNon_bondedRms() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "non-bonded_rms", this);
        }

    }

    public static class PdbxDccDensityCorrBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_dcc_density_corr";

        public PdbxDccDensityCorrBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal", this);
        }

        public StrColumnBuilder enterProgram() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "program", this);
        }

        public FloatColumnBuilder enterLsDResHigh() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ls_d_res_high", this);
        }

        public FloatColumnBuilder enterLsDResLow() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ls_d_res_low", this);
        }

        public FloatColumnBuilder enterLsRFactorRAll() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ls_R_factor_R_all", this);
        }

        public FloatColumnBuilder enterLsRFactorRWork() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ls_R_factor_R_work", this);
        }

        public FloatColumnBuilder enterLsRFactorRFree() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ls_R_factor_R_free", this);
        }

        public IntColumnBuilder enterLsNumberReflnsObs() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ls_number_reflns_obs", this);
        }

        public FloatColumnBuilder enterLsPercentReflnsObs() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ls_percent_reflns_obs", this);
        }

        public IntColumnBuilder enterLsNumberReflnsRFree() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ls_number_reflns_R_free", this);
        }

        public FloatColumnBuilder enterCorrelationCoeffFoToFc() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "correlation_coeff_Fo_to_Fc", this);
        }

        public FloatColumnBuilder enterRealSpaceR() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "real_space_R", this);
        }

        public FloatColumnBuilder enterCorrelation() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "correlation", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class PdbxDccMapBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_dcc_map";

        public PdbxDccMapBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterModelId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "model_id", this);
        }

        public StrColumnBuilder enterPdbId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdb_id", this);
        }

        public StrColumnBuilder enterAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id", this);
        }

        public StrColumnBuilder enterAuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_comp_id", this);
        }

        public StrColumnBuilder enterAuthSeqId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id", this);
        }

        public StrColumnBuilder enterLabelAltId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_alt_id", this);
        }

        public StrColumnBuilder enterLabelInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_ins_code", this);
        }

        public FloatColumnBuilder enterRSCC() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "RSCC", this);
        }

        public FloatColumnBuilder enterRSR() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "RSR", this);
        }

        public FloatColumnBuilder enterWeightedRSR() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "weighted_RSR", this);
        }

        public FloatColumnBuilder enterRSRZ() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "RSRZ", this);
        }

        public FloatColumnBuilder enterWeightedRSRZ() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "weighted_RSRZ", this);
        }

        public FloatColumnBuilder enterBisoMean() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Biso_mean", this);
        }

        public FloatColumnBuilder enterOccupancyMean() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "occupancy_mean", this);
        }

        public FloatColumnBuilder enterRSCCMainChain() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "RSCC_main_chain", this);
        }

        public FloatColumnBuilder enterRSRMainChain() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "RSR_main_chain", this);
        }

        public FloatColumnBuilder enterWRSRMainChain() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "wRSR_main_chain", this);
        }

        public FloatColumnBuilder enterRSRZMainChain() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "RSRZ_main_chain", this);
        }

        public FloatColumnBuilder enterWRSRZMainChain() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "wRSRZ_main_chain", this);
        }

        public FloatColumnBuilder enterBisoMeanMainChain() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Biso_mean_main_chain", this);
        }

        public FloatColumnBuilder enterOccupancyMeanMainChain() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "occupancy_mean_main_chain", this);
        }

        public FloatColumnBuilder enterRSCCSideChain() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "RSCC_side_chain", this);
        }

        public FloatColumnBuilder enterRSRSideChain() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "RSR_side_chain", this);
        }

        public FloatColumnBuilder enterWRSRSideChain() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "wRSR_side_chain", this);
        }

        public FloatColumnBuilder enterRSRZSideChain() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "RSRZ_side_chain", this);
        }

        public FloatColumnBuilder enterWRSRZSideChain() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "wRSRZ_side_chain", this);
        }

        public FloatColumnBuilder enterBisoMeanSideChain() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Biso_mean_side_chain", this);
        }

        public FloatColumnBuilder enterOccupancyMeanSideChain() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "occupancy_mean_side_chain", this);
        }

        public FloatColumnBuilder enterRSCCPhosphateGroup() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "RSCC_phosphate_group", this);
        }

        public FloatColumnBuilder enterRSRPhosphateGroup() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "RSR_phosphate_group", this);
        }

        public FloatColumnBuilder enterWRSRPhosphateGroup() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "wRSR_phosphate_group", this);
        }

        public FloatColumnBuilder enterRSRZPhosphateGroup() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "RSRZ_phosphate_group", this);
        }

        public FloatColumnBuilder enterWRSRZPhosphateGroup() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "wRSRZ_phosphate_group", this);
        }

        public FloatColumnBuilder enterBisoMeanPhosphateGroup() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Biso_mean_phosphate_group", this);
        }

        public FloatColumnBuilder enterOccupancyMeanPhosphateGroup() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "occupancy_mean_phosphate_group", this);
        }

        public FloatColumnBuilder enterShift() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "shift", this);
        }

        public FloatColumnBuilder enterShiftMainChain() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "shift_main_chain", this);
        }

        public FloatColumnBuilder enterShiftSideChain() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "shift_side_chain", this);
        }

        public FloatColumnBuilder enterDensityConnectivity() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "density_connectivity", this);
        }

        public FloatColumnBuilder enterDensityIndexMainChain() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "density_index_main_chain", this);
        }

        public FloatColumnBuilder enterDensityIndexSideChain() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "density_index_side_chain", this);
        }

        public FloatColumnBuilder enterRSZD() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "RSZD", this);
        }

        public FloatColumnBuilder enterRSZO() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "RSZO", this);
        }

        public FloatColumnBuilder enterRSZOZscore() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "RSZO_Zscore", this);
        }

        public FloatColumnBuilder enterLLDF() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "LLDF", this);
        }

        public FloatColumnBuilder enterRSZDMainChain() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "RSZD_main_chain", this);
        }

        public FloatColumnBuilder enterRSZOMainChain() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "RSZO_main_chain", this);
        }

        public FloatColumnBuilder enterRSZDSideChain() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "RSZD_side_chain", this);
        }

        public FloatColumnBuilder enterRSZOSideChain() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "RSZO_side_chain", this);
        }

        public FloatColumnBuilder enterRSZDPhosphateGroup() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "RSZD_phosphate_group", this);
        }

        public FloatColumnBuilder enterRSZOPhosphateGroup() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "RSZO_phosphate_group", this);
        }

        public StrColumnBuilder enterQualityIndicator() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "quality_indicator", this);
        }

    }

    public static class PdbxDepositGroupBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_deposit_group";

        public PdbxDepositGroupBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterGroupId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "group_id", this);
        }

        public StrColumnBuilder enterGroupTitle() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "group_title", this);
        }

        public StrColumnBuilder enterGroupDescription() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "group_description", this);
        }

        public StrColumnBuilder enterGroupType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "group_type", this);
        }

    }

    public static class PdbxDepositGroupIndexBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_deposit_group_index";

        public PdbxDepositGroupIndexBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterGroupId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "group_id", this);
        }

        public IntColumnBuilder enterOrdinalId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal_id", this);
        }

        public StrColumnBuilder enterDepSetId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "dep_set_id", this);
        }

        public StrColumnBuilder enterPdbIdCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdb_id_code", this);
        }

        public StrColumnBuilder enterGroupFileName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "group_file_name", this);
        }

        public StrColumnBuilder enterGroupFileTimestamp() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "group_file_timestamp", this);
        }

        public StrColumnBuilder enterAuthFileLabel() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_file_label", this);
        }

        public StrColumnBuilder enterAuthFileContentType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_file_content_type", this);
        }

        public StrColumnBuilder enterAuthFileFormatType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_file_format_type", this);
        }

        public StrColumnBuilder enterAuthFileName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_file_name", this);
        }

        public IntColumnBuilder enterAuthFileSize() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "auth_file_size", this);
        }

    }

    public static class PdbxStructAssemblyAuthEvidenceBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_struct_assembly_auth_evidence";

        public PdbxStructAssemblyAuthEvidenceBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterAssemblyId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "assembly_id", this);
        }

        public StrColumnBuilder enterExperimentalSupport() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "experimental_support", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class PdbxStructAssemblyAuthClassificationBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_struct_assembly_auth_classification";

        public PdbxStructAssemblyAuthClassificationBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterAssemblyId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "assembly_id", this);
        }

        public StrColumnBuilder enterReasonForInterest() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "reason_for_interest", this);
        }

    }

    public static class PdbxCrystalAlignmentBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_crystal_alignment";

        public PdbxCrystalAlignmentBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterCrystalId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "crystal_id", this);
        }

        public FloatColumnBuilder enterOscillationRange() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "oscillation_range", this);
        }

        public FloatColumnBuilder enterOscillationStart() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "oscillation_start", this);
        }

        public FloatColumnBuilder enterOscillationEnd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "oscillation_end", this);
        }

        public FloatColumnBuilder enterXbeam() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "xbeam", this);
        }

        public FloatColumnBuilder enterXbeamEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "xbeam_esd", this);
        }

        public FloatColumnBuilder enterYbeam() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ybeam", this);
        }

        public FloatColumnBuilder enterYbeamEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ybeam_esd", this);
        }

        public FloatColumnBuilder enterCrysxSpindle() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "crysx_spindle", this);
        }

        public FloatColumnBuilder enterCrysxSpindleEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "crysx_spindle_esd", this);
        }

        public FloatColumnBuilder enterCrysyVertical() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "crysy_vertical", this);
        }

        public FloatColumnBuilder enterCrysyVerticalEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "crysy_vertical_esd", this);
        }

        public FloatColumnBuilder enterCryszBeam() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "crysz_beam", this);
        }

        public FloatColumnBuilder enterCryszBeamEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "crysz_beam_esd", this);
        }

        public FloatColumnBuilder enterCrystalToDetectorDistance() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "crystal_to_detector_distance", this);
        }

        public FloatColumnBuilder enterCrystalToDetectorDistanceEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "crystal_to_detector_distance_esd", this);
        }

        public FloatColumnBuilder enterCrossfireX() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "crossfire_x", this);
        }

        public FloatColumnBuilder enterCrossfireXEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "crossfire_x_esd", this);
        }

        public FloatColumnBuilder enterCrossfireY() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "crossfire_y", this);
        }

        public FloatColumnBuilder enterCrossfireYEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "crossfire_y_esd", this);
        }

        public FloatColumnBuilder enterCrossfireXy() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "crossfire_xy", this);
        }

        public FloatColumnBuilder enterCrossfireXyEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "crossfire_xy_esd", this);
        }

        public FloatColumnBuilder enterOverallBeamDivergence() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "overall_beam_divergence", this);
        }

        public FloatColumnBuilder enterOverallBeamDivergenceEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "overall_beam_divergence_esd", this);
        }

    }

    public static class PdbxAuditRevisionHistoryBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_audit_revision_history";

        public PdbxAuditRevisionHistoryBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal", this);
        }

        public StrColumnBuilder enterDataContentType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "data_content_type", this);
        }

        public IntColumnBuilder enterMajorRevision() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "major_revision", this);
        }

        public IntColumnBuilder enterMinorRevision() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "minor_revision", this);
        }

        public StrColumnBuilder enterRevisionDate() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "revision_date", this);
        }

        public IntColumnBuilder enterInternalVersion() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "internal_version", this);
        }

        public StrColumnBuilder enterInternalDepositionId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "internal_deposition_id", this);
        }

    }

    public static class PdbxAuditRevisionGroupBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_audit_revision_group";

        public PdbxAuditRevisionGroupBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal", this);
        }

        public IntColumnBuilder enterRevisionOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "revision_ordinal", this);
        }

        public StrColumnBuilder enterDataContentType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "data_content_type", this);
        }

        public StrColumnBuilder enterGroup() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "group", this);
        }

    }

    public static class PdbxAuditRevisionCategoryBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_audit_revision_category";

        public PdbxAuditRevisionCategoryBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal", this);
        }

        public IntColumnBuilder enterRevisionOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "revision_ordinal", this);
        }

        public StrColumnBuilder enterDataContentType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "data_content_type", this);
        }

        public StrColumnBuilder enterCategory() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "category", this);
        }

    }

    public static class PdbxAuditRevisionDetailsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_audit_revision_details";

        public PdbxAuditRevisionDetailsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal", this);
        }

        public IntColumnBuilder enterRevisionOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "revision_ordinal", this);
        }

        public StrColumnBuilder enterDataContentType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "data_content_type", this);
        }

        public StrColumnBuilder enterProvider() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "provider", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public StrColumnBuilder enterDescription() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "description", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class PdbxAuditRevisionItemBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_audit_revision_item";

        public PdbxAuditRevisionItemBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal", this);
        }

        public IntColumnBuilder enterRevisionOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "revision_ordinal", this);
        }

        public StrColumnBuilder enterDataContentType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "data_content_type", this);
        }

        public StrColumnBuilder enterItem() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "item", this);
        }

    }

    public static class PdbxSupportingExpDataSetBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_supporting_exp_data_set";

        public PdbxSupportingExpDataSetBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal", this);
        }

        public StrColumnBuilder enterDataContentType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "data_content_type", this);
        }

        public IntColumnBuilder enterDataVersionMajor() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "data_version_major", this);
        }

        public IntColumnBuilder enterDataVersionMinor() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "data_version_minor", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class PdbxDatabaseDoiBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_database_doi";

        public PdbxDatabaseDoiBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDbName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "db_name", this);
        }

        public StrColumnBuilder enterDbDOI() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "db_DOI", this);
        }

    }

    public static class PdbxAuditConformBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_audit_conform";

        public PdbxAuditConformBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDictLocation() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "dict_location", this);
        }

        public StrColumnBuilder enterDictName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "dict_name", this);
        }

        public StrColumnBuilder enterDictVersion() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "dict_version", this);
        }

    }

    public static class PdbxSerialCrystallographyMeasurementBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_serial_crystallography_measurement";

        public PdbxSerialCrystallographyMeasurementBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDiffrnId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "diffrn_id", this);
        }

        public FloatColumnBuilder enterPulseEnergy() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pulse_energy", this);
        }

        public FloatColumnBuilder enterPulseDuration() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pulse_duration", this);
        }

        public FloatColumnBuilder enterXfelPulseRepetitionRate() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "xfel_pulse_repetition_rate", this);
        }

        public FloatColumnBuilder enterPulsePhotonEnergy() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pulse_photon_energy", this);
        }

        public FloatColumnBuilder enterPhotonsPerPulse() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "photons_per_pulse", this);
        }

        public FloatColumnBuilder enterSourceSize() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "source_size", this);
        }

        public FloatColumnBuilder enterSourceDistance() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "source_distance", this);
        }

        public FloatColumnBuilder enterFocalSpotSize() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "focal_spot_size", this);
        }

        public StrColumnBuilder enterCollimation() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "collimation", this);
        }

        public FloatColumnBuilder enterCollectionTimeTotal() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "collection_time_total", this);
        }

    }

    public static class PdbxSerialCrystallographySampleDeliveryBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_serial_crystallography_sample_delivery";

        public PdbxSerialCrystallographySampleDeliveryBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDiffrnId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "diffrn_id", this);
        }

        public StrColumnBuilder enterDescription() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "description", this);
        }

        public StrColumnBuilder enterMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "method", this);
        }

    }

    public static class PdbxSerialCrystallographySampleDeliveryInjectionBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_serial_crystallography_sample_delivery_injection";

        public PdbxSerialCrystallographySampleDeliveryInjectionBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDiffrnId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "diffrn_id", this);
        }

        public StrColumnBuilder enterDescription() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "description", this);
        }

        public FloatColumnBuilder enterInjectorDiameter() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "injector_diameter", this);
        }

        public FloatColumnBuilder enterInjectorTemperature() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "injector_temperature", this);
        }

        public FloatColumnBuilder enterInjectorPressure() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "injector_pressure", this);
        }

        public FloatColumnBuilder enterFlowRate() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "flow_rate", this);
        }

        public StrColumnBuilder enterCarrierSolvent() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "carrier_solvent", this);
        }

        public FloatColumnBuilder enterCrystalConcentration() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "crystal_concentration", this);
        }

        public StrColumnBuilder enterPreparation() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "preparation", this);
        }

        public StrColumnBuilder enterPowerBy() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "power_by", this);
        }

        public StrColumnBuilder enterInjectorNozzle() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "injector_nozzle", this);
        }

        public FloatColumnBuilder enterJetDiameter() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "jet_diameter", this);
        }

        public FloatColumnBuilder enterFilterSize() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "filter_size", this);
        }

    }

    public static class PdbxSerialCrystallographySampleDeliveryFixedTargetBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_serial_crystallography_sample_delivery_fixed_target";

        public PdbxSerialCrystallographySampleDeliveryFixedTargetBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDiffrnId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "diffrn_id", this);
        }

        public StrColumnBuilder enterDescription() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "description", this);
        }

        public StrColumnBuilder enterSampleHolding() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "sample_holding", this);
        }

        public StrColumnBuilder enterSupportBase() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "support_base", this);
        }

        public FloatColumnBuilder enterSampleUnitSize() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "sample_unit_size", this);
        }

        public IntColumnBuilder enterCrystalsPerUnit() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "crystals_per_unit", this);
        }

        public StrColumnBuilder enterSampleSolvent() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "sample_solvent", this);
        }

        public StrColumnBuilder enterSampleDehydrationPrevention() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "sample_dehydration_prevention", this);
        }

        public StrColumnBuilder enterMotionControl() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "motion_control", this);
        }

        public FloatColumnBuilder enterVelocityHorizontal() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "velocity_horizontal", this);
        }

        public FloatColumnBuilder enterVelocityVertical() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "velocity_vertical", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class PdbxSerialCrystallographyDataReductionBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_serial_crystallography_data_reduction";

        public PdbxSerialCrystallographyDataReductionBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterDiffrnId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "diffrn_id", this);
        }

        public IntColumnBuilder enterFramesTotal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "frames_total", this);
        }

        public IntColumnBuilder enterXfelPulseEvents() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "xfel_pulse_events", this);
        }

        public IntColumnBuilder enterFrameHits() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "frame_hits", this);
        }

        public IntColumnBuilder enterCrystalHits() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "crystal_hits", this);
        }

        public IntColumnBuilder enterDropletHits() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "droplet_hits", this);
        }

        public IntColumnBuilder enterFramesFailedIndex() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "frames_failed_index", this);
        }

        public IntColumnBuilder enterFramesIndexed() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "frames_indexed", this);
        }

        public IntColumnBuilder enterLatticesIndexed() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "lattices_indexed", this);
        }

        public StrColumnBuilder enterXfelRunNumbers() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "xfel_run_numbers", this);
        }

        public IntColumnBuilder enterLatticesMerged() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "lattices_merged", this);
        }

    }

    public static class PdbxAuditSupportBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_audit_support";

        public PdbxAuditSupportBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterFundingOrganization() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "funding_organization", this);
        }

        public StrColumnBuilder enterCountry() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "country", this);
        }

        public StrColumnBuilder enterGrantNumber() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "grant_number", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public IntColumnBuilder enterOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal", this);
        }

    }

    public static class PdbxEntityBranchListBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_entity_branch_list";

        public PdbxEntityBranchListBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public StrColumnBuilder enterHetero() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "hetero", this);
        }

        public StrColumnBuilder enterCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id", this);
        }

        public IntColumnBuilder enterNum() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num", this);
        }

    }

    public static class PdbxEntityBranchLinkBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_entity_branch_link";

        public PdbxEntityBranchLinkBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterLinkId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "link_id", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public IntColumnBuilder enterEntityBranchListNum1() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "entity_branch_list_num_1", this);
        }

        public IntColumnBuilder enterEntityBranchListNum2() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "entity_branch_list_num_2", this);
        }

        public StrColumnBuilder enterCompId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id_1", this);
        }

        public StrColumnBuilder enterCompId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id_2", this);
        }

        public StrColumnBuilder enterAtomId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id_1", this);
        }

        public StrColumnBuilder enterLeavingAtomId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "leaving_atom_id_1", this);
        }

        public StrColumnBuilder enterAtomStereoConfig1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_stereo_config_1", this);
        }

        public StrColumnBuilder enterAtomId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id_2", this);
        }

        public StrColumnBuilder enterLeavingAtomId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "leaving_atom_id_2", this);
        }

        public StrColumnBuilder enterAtomStereoConfig2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_stereo_config_2", this);
        }

        public StrColumnBuilder enterValueOrder() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "value_order", this);
        }

    }

    public static class PdbxEntityBranchBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_entity_branch";

        public PdbxEntityBranchBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

    }

    public static class PdbxBranchSchemeBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_branch_scheme";

        public PdbxBranchSchemeBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public StrColumnBuilder enterHetero() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "hetero", this);
        }

        public StrColumnBuilder enterAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "asym_id", this);
        }

        public StrColumnBuilder enterMonId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "mon_id", this);
        }

        public IntColumnBuilder enterNum() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num", this);
        }

        public StrColumnBuilder enterPdbAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdb_asym_id", this);
        }

        public StrColumnBuilder enterPdbSeqNum() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdb_seq_num", this);
        }

        public StrColumnBuilder enterPdbInsCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdb_ins_code", this);
        }

        public StrColumnBuilder enterPdbMonId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pdb_mon_id", this);
        }

        public StrColumnBuilder enterAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id", this);
        }

        public StrColumnBuilder enterAuthSeqNum() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_num", this);
        }

        public StrColumnBuilder enterAuthMonId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_mon_id", this);
        }

    }

    public static class PdbxChemCompRelatedBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_chem_comp_related";

        public PdbxChemCompRelatedBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id", this);
        }

        public StrColumnBuilder enterRelatedCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "related_comp_id", this);
        }

        public StrColumnBuilder enterRelationshipType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "relationship_type", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class PdbxChemCompAtomRelatedBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_chem_comp_atom_related";

        public PdbxChemCompAtomRelatedBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id", this);
        }

        public StrColumnBuilder enterRelatedCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "related_comp_id", this);
        }

        public IntColumnBuilder enterOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal", this);
        }

        public StrColumnBuilder enterAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id", this);
        }

        public StrColumnBuilder enterRelatedAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "related_atom_id", this);
        }

        public StrColumnBuilder enterRelatedType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "related_type", this);
        }

    }

    public static class PdbxReflnSignalBinningBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_refln_signal_binning";

        public PdbxReflnSignalBinningBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal", this);
        }

        public FloatColumnBuilder enterUpperThreshold() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "upper_threshold", this);
        }

    }

    public static class PdbxSiftsXrefDbBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_sifts_xref_db";

        public PdbxSiftsXrefDbBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public StrColumnBuilder enterAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "asym_id", this);
        }

        public IntColumnBuilder enterSeqIdOrdinal() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "seq_id_ordinal", this);
        }

        public IntColumnBuilder enterSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "seq_id", this);
        }

        public StrColumnBuilder enterMonId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "mon_id", this);
        }

        public StrColumnBuilder enterMonIdOneLetterCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "mon_id_one_letter_code", this);
        }

        public StrColumnBuilder enterUnpRes() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "unp_res", this);
        }

        public IntColumnBuilder enterUnpNum() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "unp_num", this);
        }

        public StrColumnBuilder enterUnpAcc() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "unp_acc", this);
        }

        public IntColumnBuilder enterUnpSegmentId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "unp_segment_id", this);
        }

        public IntColumnBuilder enterUnpInstanceId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "unp_instance_id", this);
        }

        public StrColumnBuilder enterResType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "res_type", this);
        }

        public StrColumnBuilder enterObserved() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "observed", this);
        }

        public IntColumnBuilder enterMhId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "mh_id", this);
        }

        public StrColumnBuilder enterXrefDbName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "xref_db_name", this);
        }

        public StrColumnBuilder enterXrefDbAcc() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "xref_db_acc", this);
        }

        public StrColumnBuilder enterXrefDomainName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "xref_domain_name", this);
        }

        public IntColumnBuilder enterXrefDbSegmentId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "xref_db_segment_id", this);
        }

        public IntColumnBuilder enterXrefDbInstanceId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "xref_db_instance_id", this);
        }

    }

    public static class PdbxSiftsXrefDbSegmentsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_sifts_xref_db_segments";

        public PdbxSiftsXrefDbSegmentsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public StrColumnBuilder enterAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "asym_id", this);
        }

        public StrColumnBuilder enterXrefDb() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "xref_db", this);
        }

        public StrColumnBuilder enterXrefDbAcc() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "xref_db_acc", this);
        }

        public StrColumnBuilder enterDomainName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "domain_name", this);
        }

        public IntColumnBuilder enterSegmentId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "segment_id", this);
        }

        public IntColumnBuilder enterInstanceId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "instance_id", this);
        }

        public IntColumnBuilder enterSeqIdStart() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "seq_id_start", this);
        }

        public IntColumnBuilder enterSeqIdEnd() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "seq_id_end", this);
        }

    }

    public static class PdbxSiftsUnpSegmentsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_sifts_unp_segments";

        public PdbxSiftsUnpSegmentsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public StrColumnBuilder enterAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "asym_id", this);
        }

        public StrColumnBuilder enterUnpAcc() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "unp_acc", this);
        }

        public IntColumnBuilder enterSegmentId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "segment_id", this);
        }

        public IntColumnBuilder enterInstanceId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "instance_id", this);
        }

        public IntColumnBuilder enterUnpStart() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "unp_start", this);
        }

        public IntColumnBuilder enterUnpEnd() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "unp_end", this);
        }

        public IntColumnBuilder enterSeqIdStart() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "seq_id_start", this);
        }

        public IntColumnBuilder enterSeqIdEnd() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "seq_id_end", this);
        }

        public StrColumnBuilder enterBestMapping() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "best_mapping", this);
        }

        public FloatColumnBuilder enterIdentity() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "identity", this);
        }

    }

    public static class PdbxDataUsageBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_data_usage";

        public PdbxDataUsageBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterUrl() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "url", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

    }

    public static class PdbxEntityRemappingBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_entity_remapping";

        public PdbxEntityRemappingBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public StrColumnBuilder enterOrigEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "orig_entity_id", this);
        }

    }

    public static class PdbxChainRemappingBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_chain_remapping";

        public PdbxChainRemappingBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public StrColumnBuilder enterLabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_asym_id", this);
        }

        public StrColumnBuilder enterAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id", this);
        }

        public StrColumnBuilder enterOrigLabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "orig_label_asym_id", this);
        }

        public StrColumnBuilder enterOrigAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "orig_auth_asym_id", this);
        }

        public StrColumnBuilder enterAppliedOperations() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "applied_operations", this);
        }

    }

    public static class PdbxInitialRefinementModelBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_initial_refinement_model";

        public PdbxInitialRefinementModelBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterEntityIdList() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id_list", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public StrColumnBuilder enterSourceName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "source_name", this);
        }

        public StrColumnBuilder enterAccessionCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "accession_code", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class PdbxInvestigationBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "pdbx_investigation";

        public PdbxInvestigationBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public StrColumnBuilder enterResourceName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "resource_name", this);
        }

        public StrColumnBuilder enterResourceAccession() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "resource_accession", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class IhmEntityPolySegmentBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_entity_poly_segment";

        public IhmEntityPolySegmentBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public IntColumnBuilder enterSeqIdBegin() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "seq_id_begin", this);
        }

        public IntColumnBuilder enterSeqIdEnd() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "seq_id_end", this);
        }

        public StrColumnBuilder enterCompIdBegin() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id_begin", this);
        }

        public StrColumnBuilder enterCompIdEnd() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id_end", this);
        }

    }

    public static class IhmStartingModelDetailsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_starting_model_details";

        public IhmStartingModelDetailsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterStartingModelId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "starting_model_id", this);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public StrColumnBuilder enterEntityDescription() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_description", this);
        }

        public StrColumnBuilder enterAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "asym_id", this);
        }

        public IntColumnBuilder enterEntityPolySegmentId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "entity_poly_segment_id", this);
        }

        public StrColumnBuilder enterStartingModelSource() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "starting_model_source", this);
        }

        public StrColumnBuilder enterStartingModelAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "starting_model_auth_asym_id", this);
        }

        public IntColumnBuilder enterStartingModelSequenceOffset() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "starting_model_sequence_offset", this);
        }

        public IntColumnBuilder enterDatasetListId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "dataset_list_id", this);
        }

        public StrColumnBuilder enterDescription() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "description", this);
        }

    }

    public static class IhmStartingComparativeModelsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_starting_comparative_models";

        public IhmStartingComparativeModelsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterStartingModelId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "starting_model_id", this);
        }

        public StrColumnBuilder enterStartingModelAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "starting_model_auth_asym_id", this);
        }

        public IntColumnBuilder enterStartingModelSeqIdBegin() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "starting_model_seq_id_begin", this);
        }

        public IntColumnBuilder enterStartingModelSeqIdEnd() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "starting_model_seq_id_end", this);
        }

        public StrColumnBuilder enterTemplateAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "template_auth_asym_id", this);
        }

        public IntColumnBuilder enterTemplateSeqIdBegin() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "template_seq_id_begin", this);
        }

        public IntColumnBuilder enterTemplateSeqIdEnd() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "template_seq_id_end", this);
        }

        public FloatColumnBuilder enterTemplateSequenceIdentity() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "template_sequence_identity", this);
        }

        public StrColumnBuilder enterTemplateSequenceIdentityDenominator() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "template_sequence_identity_denominator", this);
        }

        public IntColumnBuilder enterTemplateDatasetListId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "template_dataset_list_id", this);
        }

        public IntColumnBuilder enterAlignmentFileId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "alignment_file_id", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class IhmStartingComputationalModelsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_starting_computational_models";

        public IhmStartingComputationalModelsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterStartingModelId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "starting_model_id", this);
        }

        public IntColumnBuilder enterScriptFileId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "script_file_id", this);
        }

        public IntColumnBuilder enterSoftwareId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "software_id", this);
        }

    }

    public static class IhmStartingModelSeqDifBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_starting_model_seq_dif";

        public IhmStartingModelSeqDifBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public StrColumnBuilder enterAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "asym_id", this);
        }

        public IntColumnBuilder enterSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "seq_id", this);
        }

        public StrColumnBuilder enterCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id", this);
        }

        public StrColumnBuilder enterStartingModelId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "starting_model_id", this);
        }

        public StrColumnBuilder enterDbEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "db_entity_id", this);
        }

        public StrColumnBuilder enterDbAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "db_asym_id", this);
        }

        public IntColumnBuilder enterDbSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "db_seq_id", this);
        }

        public StrColumnBuilder enterDbCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "db_comp_id", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class IhmModelRepresentationBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_model_representation";

        public IhmModelRepresentationBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class IhmModelRepresentationDetailsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_model_representation_details";

        public IhmModelRepresentationDetailsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterRepresentationId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "representation_id", this);
        }

        public IntColumnBuilder enterEntityPolySegmentId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "entity_poly_segment_id", this);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public StrColumnBuilder enterEntityDescription() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_description", this);
        }

        public StrColumnBuilder enterEntityAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_asym_id", this);
        }

        public StrColumnBuilder enterModelObjectPrimitive() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "model_object_primitive", this);
        }

        public StrColumnBuilder enterStartingModelId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "starting_model_id", this);
        }

        public StrColumnBuilder enterModelMode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "model_mode", this);
        }

        public StrColumnBuilder enterModelGranularity() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "model_granularity", this);
        }

        public IntColumnBuilder enterModelObjectCount() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "model_object_count", this);
        }

        public StrColumnBuilder enterDescription() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "description", this);
        }

    }

    public static class IhmStructAssemblyDetailsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_struct_assembly_details";

        public IhmStructAssemblyDetailsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterAssemblyId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "assembly_id", this);
        }

        public IntColumnBuilder enterParentAssemblyId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "parent_assembly_id", this);
        }

        public StrColumnBuilder enterEntityDescription() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_description", this);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public StrColumnBuilder enterAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "asym_id", this);
        }

        public IntColumnBuilder enterEntityPolySegmentId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "entity_poly_segment_id", this);
        }

    }

    public static class IhmStructAssemblyBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_struct_assembly";

        public IhmStructAssemblyBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public StrColumnBuilder enterDescription() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "description", this);
        }

    }

    public static class IhmStructAssemblyClassBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_struct_assembly_class";

        public IhmStructAssemblyClassBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public StrColumnBuilder enterDescription() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "description", this);
        }

    }

    public static class IhmStructAssemblyClassLinkBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_struct_assembly_class_link";

        public IhmStructAssemblyClassLinkBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterClassId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "class_id", this);
        }

        public IntColumnBuilder enterAssemblyId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "assembly_id", this);
        }

    }

    public static class IhmModelingProtocolBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_modeling_protocol";

        public IhmModelingProtocolBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterNumSteps() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_steps", this);
        }

        public StrColumnBuilder enterProtocolName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "protocol_name", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class IhmModelingProtocolDetailsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_modeling_protocol_details";

        public IhmModelingProtocolDetailsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterProtocolId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "protocol_id", this);
        }

        public IntColumnBuilder enterStepId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "step_id", this);
        }

        public IntColumnBuilder enterStructAssemblyId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "struct_assembly_id", this);
        }

        public IntColumnBuilder enterDatasetGroupId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "dataset_group_id", this);
        }

        public StrColumnBuilder enterStructAssemblyDescription() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "struct_assembly_description", this);
        }

        public StrColumnBuilder enterStepName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "step_name", this);
        }

        public StrColumnBuilder enterStepMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "step_method", this);
        }

        public IntColumnBuilder enterNumModelsBegin() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_models_begin", this);
        }

        public IntColumnBuilder enterNumModelsEnd() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_models_end", this);
        }

        public StrColumnBuilder enterMultiScaleFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "multi_scale_flag", this);
        }

        public StrColumnBuilder enterMultiStateFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "multi_state_flag", this);
        }

        public StrColumnBuilder enterOrderedFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ordered_flag", this);
        }

        public StrColumnBuilder enterEnsembleFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ensemble_flag", this);
        }

        public IntColumnBuilder enterScriptFileId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "script_file_id", this);
        }

        public IntColumnBuilder enterSoftwareId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "software_id", this);
        }

        public StrColumnBuilder enterDescription() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "description", this);
        }

    }

    public static class IhmMultiStateModelingBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_multi_state_modeling";

        public IhmMultiStateModelingBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterStateId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "state_id", this);
        }

        public IntColumnBuilder enterStateGroupId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "state_group_id", this);
        }

        public FloatColumnBuilder enterPopulationFraction() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "population_fraction", this);
        }

        public FloatColumnBuilder enterPopulationFractionSd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "population_fraction_sd", this);
        }

        public StrColumnBuilder enterStateType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "state_type", this);
        }

        public StrColumnBuilder enterStateName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "state_name", this);
        }

        public StrColumnBuilder enterExperimentType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "experiment_type", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class IhmMultiStateModelGroupLinkBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_multi_state_model_group_link";

        public IhmMultiStateModelGroupLinkBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterStateId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "state_id", this);
        }

        public IntColumnBuilder enterModelGroupId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "model_group_id", this);
        }

    }

    public static class IhmOrderedEnsembleBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_ordered_ensemble";

        public IhmOrderedEnsembleBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterProcessId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "process_id", this);
        }

        public StrColumnBuilder enterProcessDescription() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "process_description", this);
        }

        public IntColumnBuilder enterEdgeId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "edge_id", this);
        }

        public StrColumnBuilder enterEdgeDescription() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "edge_description", this);
        }

        public IntColumnBuilder enterStepId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "step_id", this);
        }

        public StrColumnBuilder enterStepDescription() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "step_description", this);
        }

        public StrColumnBuilder enterOrderedBy() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ordered_by", this);
        }

        public IntColumnBuilder enterModelGroupIdBegin() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "model_group_id_begin", this);
        }

        public IntColumnBuilder enterModelGroupIdEnd() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "model_group_id_end", this);
        }

    }

    public static class IhmModelingPostProcessBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_modeling_post_process";

        public IhmModelingPostProcessBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterProtocolId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "protocol_id", this);
        }

        public IntColumnBuilder enterAnalysisId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "analysis_id", this);
        }

        public IntColumnBuilder enterStepId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "step_id", this);
        }

        public IntColumnBuilder enterStructAssemblyId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "struct_assembly_id", this);
        }

        public IntColumnBuilder enterDatasetGroupId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "dataset_group_id", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public StrColumnBuilder enterFeature() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "feature", this);
        }

        public StrColumnBuilder enterFeatureName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "feature_name", this);
        }

        public IntColumnBuilder enterNumModelsBegin() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_models_begin", this);
        }

        public IntColumnBuilder enterNumModelsEnd() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_models_end", this);
        }

        public IntColumnBuilder enterScriptFileId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "script_file_id", this);
        }

        public IntColumnBuilder enterSoftwareId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "software_id", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class IhmEnsembleInfoBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_ensemble_info";

        public IhmEnsembleInfoBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterEnsembleId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ensemble_id", this);
        }

        public StrColumnBuilder enterEnsembleName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ensemble_name", this);
        }

        public IntColumnBuilder enterPostProcessId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "post_process_id", this);
        }

        public IntColumnBuilder enterModelGroupId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "model_group_id", this);
        }

        public StrColumnBuilder enterEnsembleClusteringMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ensemble_clustering_method", this);
        }

        public StrColumnBuilder enterEnsembleClusteringFeature() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ensemble_clustering_feature", this);
        }

        public IntColumnBuilder enterNumEnsembleModels() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_ensemble_models", this);
        }

        public IntColumnBuilder enterNumEnsembleModelsDeposited() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_ensemble_models_deposited", this);
        }

        public FloatColumnBuilder enterEnsemblePrecisionValue() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ensemble_precision_value", this);
        }

        public IntColumnBuilder enterEnsembleFileId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ensemble_file_id", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterSubSampleFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "sub_sample_flag", this);
        }

        public StrColumnBuilder enterSubSamplingType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "sub_sampling_type", this);
        }

    }

    public static class IhmEnsembleSubSampleBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_ensemble_sub_sample";

        public IhmEnsembleSubSampleBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public IntColumnBuilder enterEnsembleId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ensemble_id", this);
        }

        public IntColumnBuilder enterNumModels() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_models", this);
        }

        public IntColumnBuilder enterNumModelsDeposited() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_models_deposited", this);
        }

        public IntColumnBuilder enterModelGroupId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "model_group_id", this);
        }

        public IntColumnBuilder enterFileId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "file_id", this);
        }

    }

    public static class IhmModelListBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_model_list";

        public IhmModelListBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterModelId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "model_id", this);
        }

        public StrColumnBuilder enterModelName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "model_name", this);
        }

        public IntColumnBuilder enterAssemblyId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "assembly_id", this);
        }

        public IntColumnBuilder enterProtocolId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "protocol_id", this);
        }

        public IntColumnBuilder enterRepresentationId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "representation_id", this);
        }

    }

    public static class IhmModelGroupBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_model_group";

        public IhmModelGroupBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class IhmModelGroupLinkBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_model_group_link";

        public IhmModelGroupLinkBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterModelId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "model_id", this);
        }

        public IntColumnBuilder enterGroupId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "group_id", this);
        }

    }

    public static class IhmModelRepresentativeBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_model_representative";

        public IhmModelRepresentativeBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterModelGroupId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "model_group_id", this);
        }

        public IntColumnBuilder enterModelId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "model_id", this);
        }

        public StrColumnBuilder enterSelectionCriteria() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "selection_criteria", this);
        }

    }

    public static class IhmDatasetListBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_dataset_list";

        public IhmDatasetListBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterDataType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "data_type", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterDatabaseHosted() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "database_hosted", this);
        }

    }

    public static class IhmDatasetGroupBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_dataset_group";

        public IhmDatasetGroupBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public StrColumnBuilder enterApplication() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "application", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class IhmDatasetGroupLinkBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_dataset_group_link";

        public IhmDatasetGroupLinkBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterDatasetListId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "dataset_list_id", this);
        }

        public IntColumnBuilder enterGroupId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "group_id", this);
        }

    }

    public static class IhmRelatedDatasetsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_related_datasets";

        public IhmRelatedDatasetsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterDatasetListIdDerived() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "dataset_list_id_derived", this);
        }

        public IntColumnBuilder enterDatasetListIdPrimary() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "dataset_list_id_primary", this);
        }

        public IntColumnBuilder enterTransformationId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "transformation_id", this);
        }

    }

    public static class IhmDataTransformationBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_data_transformation";

        public IhmDataTransformationBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public FloatColumnBuilder enterRotMatrix11() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rot_matrix[1][1]", this);
        }

        public FloatColumnBuilder enterRotMatrix21() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rot_matrix[2][1]", this);
        }

        public FloatColumnBuilder enterRotMatrix31() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rot_matrix[3][1]", this);
        }

        public FloatColumnBuilder enterRotMatrix12() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rot_matrix[1][2]", this);
        }

        public FloatColumnBuilder enterRotMatrix22() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rot_matrix[2][2]", this);
        }

        public FloatColumnBuilder enterRotMatrix32() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rot_matrix[3][2]", this);
        }

        public FloatColumnBuilder enterRotMatrix13() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rot_matrix[1][3]", this);
        }

        public FloatColumnBuilder enterRotMatrix23() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rot_matrix[2][3]", this);
        }

        public FloatColumnBuilder enterRotMatrix33() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rot_matrix[3][3]", this);
        }

        public FloatColumnBuilder enterTrVector1() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "tr_vector[1]", this);
        }

        public FloatColumnBuilder enterTrVector2() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "tr_vector[2]", this);
        }

        public FloatColumnBuilder enterTrVector3() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "tr_vector[3]", this);
        }

    }

    public static class IhmDatasetRelatedDbReferenceBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_dataset_related_db_reference";

        public IhmDatasetRelatedDbReferenceBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterDatasetListId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "dataset_list_id", this);
        }

        public StrColumnBuilder enterDbName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "db_name", this);
        }

        public StrColumnBuilder enterAccessionCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "accession_code", this);
        }

        public StrColumnBuilder enterVersion() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "version", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class IhmExternalReferenceInfoBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_external_reference_info";

        public IhmExternalReferenceInfoBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterReferenceId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "reference_id", this);
        }

        public StrColumnBuilder enterReferenceProvider() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "reference_provider", this);
        }

        public StrColumnBuilder enterReferenceType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "reference_type", this);
        }

        public StrColumnBuilder enterReference() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "reference", this);
        }

        public StrColumnBuilder enterRefersTo() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "refers_to", this);
        }

        public StrColumnBuilder enterAssociatedUrl() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "associated_url", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class IhmExternalFilesBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_external_files";

        public IhmExternalFilesBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterReferenceId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "reference_id", this);
        }

        public StrColumnBuilder enterFilePath() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "file_path", this);
        }

        public StrColumnBuilder enterFileFormat() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "file_format", this);
        }

        public StrColumnBuilder enterContentType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "content_type", this);
        }

        public FloatColumnBuilder enterFileSizeBytes() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "file_size_bytes", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class IhmDatasetExternalReferenceBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_dataset_external_reference";

        public IhmDatasetExternalReferenceBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterDatasetListId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "dataset_list_id", this);
        }

        public IntColumnBuilder enterFileId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "file_id", this);
        }

    }

    public static class IhmLocalizationDensityFilesBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_localization_density_files";

        public IhmLocalizationDensityFilesBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterFileId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "file_id", this);
        }

        public IntColumnBuilder enterEnsembleId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ensemble_id", this);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public IntColumnBuilder enterEntityPolySegmentId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "entity_poly_segment_id", this);
        }

        public StrColumnBuilder enterAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "asym_id", this);
        }

    }

    public static class IhmPredictedContactRestraintBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_predicted_contact_restraint";

        public IhmPredictedContactRestraintBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterGroupId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "group_id", this);
        }

        public StrColumnBuilder enterEntityDescription1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_description_1", this);
        }

        public StrColumnBuilder enterEntityDescription2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_description_2", this);
        }

        public StrColumnBuilder enterEntityId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id_1", this);
        }

        public StrColumnBuilder enterEntityId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id_2", this);
        }

        public StrColumnBuilder enterAsymId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "asym_id_1", this);
        }

        public StrColumnBuilder enterAsymId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "asym_id_2", this);
        }

        public StrColumnBuilder enterCompId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id_1", this);
        }

        public StrColumnBuilder enterCompId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id_2", this);
        }

        public IntColumnBuilder enterSeqId1() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "seq_id_1", this);
        }

        public IntColumnBuilder enterSeqId2() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "seq_id_2", this);
        }

        public StrColumnBuilder enterRepAtom1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "rep_atom_1", this);
        }

        public StrColumnBuilder enterRepAtom2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "rep_atom_2", this);
        }

        public FloatColumnBuilder enterDistanceLowerLimit() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "distance_lower_limit", this);
        }

        public FloatColumnBuilder enterDistanceUpperLimit() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "distance_upper_limit", this);
        }

        public FloatColumnBuilder enterProbability() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "probability", this);
        }

        public StrColumnBuilder enterRestraintType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "restraint_type", this);
        }

        public StrColumnBuilder enterModelGranularity() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "model_granularity", this);
        }

        public IntColumnBuilder enterDatasetListId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "dataset_list_id", this);
        }

        public IntColumnBuilder enterSoftwareId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "software_id", this);
        }

    }

    public static class IhmHydroxylRadicalFpRestraintBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_hydroxyl_radical_fp_restraint";

        public IhmHydroxylRadicalFpRestraintBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterGroupId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "group_id", this);
        }

        public StrColumnBuilder enterEntityDescription() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_description", this);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public StrColumnBuilder enterAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "asym_id", this);
        }

        public StrColumnBuilder enterCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id", this);
        }

        public IntColumnBuilder enterSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "seq_id", this);
        }

        public FloatColumnBuilder enterFpRate() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "fp_rate", this);
        }

        public FloatColumnBuilder enterFpRateError() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "fp_rate_error", this);
        }

        public FloatColumnBuilder enterLogPf() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "log_pf", this);
        }

        public FloatColumnBuilder enterLogPfError() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "log_pf_error", this);
        }

        public FloatColumnBuilder enterPredictedSasa() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "predicted_sasa", this);
        }

        public IntColumnBuilder enterDatasetListId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "dataset_list_id", this);
        }

        public IntColumnBuilder enterSoftwareId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "software_id", this);
        }

    }

    public static class IhmChemicalComponentDescriptorBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_chemical_component_descriptor";

        public IhmChemicalComponentDescriptorBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterChemicalName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "chemical_name", this);
        }

        public StrColumnBuilder enterCommonName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "common_name", this);
        }

        public StrColumnBuilder enterAuthName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_name", this);
        }

        public StrColumnBuilder enterSmiles() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "smiles", this);
        }

        public StrColumnBuilder enterSmilesCanonical() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "smiles_canonical", this);
        }

        public StrColumnBuilder enterInchi() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "inchi", this);
        }

        public StrColumnBuilder enterInchiKey() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "inchi_key", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class IhmProbeListBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_probe_list";

        public IhmProbeListBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterProbeId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "probe_id", this);
        }

        public StrColumnBuilder enterProbeName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "probe_name", this);
        }

        public StrColumnBuilder enterReactiveProbeFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "reactive_probe_flag", this);
        }

        public StrColumnBuilder enterReactiveProbeName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "reactive_probe_name", this);
        }

        public StrColumnBuilder enterProbeOrigin() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "probe_origin", this);
        }

        public StrColumnBuilder enterProbeLinkType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "probe_link_type", this);
        }

        public IntColumnBuilder enterProbeChemCompDescriptorId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "probe_chem_comp_descriptor_id", this);
        }

        public IntColumnBuilder enterReactiveProbeChemCompDescriptorId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "reactive_probe_chem_comp_descriptor_id", this);
        }

    }

    public static class IhmPolyProbePositionBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_poly_probe_position";

        public IhmPolyProbePositionBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public StrColumnBuilder enterEntityDescription() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_description", this);
        }

        public IntColumnBuilder enterSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "seq_id", this);
        }

        public StrColumnBuilder enterCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id", this);
        }

        public StrColumnBuilder enterMutationFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "mutation_flag", this);
        }

        public StrColumnBuilder enterMutResChemCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "mut_res_chem_comp_id", this);
        }

        public StrColumnBuilder enterModificationFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "modification_flag", this);
        }

        public IntColumnBuilder enterModResChemCompDescriptorId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "mod_res_chem_comp_descriptor_id", this);
        }

        public StrColumnBuilder enterDescription() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "description", this);
        }

    }

    public static class IhmPolyProbeConjugateBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_poly_probe_conjugate";

        public IhmPolyProbeConjugateBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterProbeId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "probe_id", this);
        }

        public IntColumnBuilder enterPositionId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "position_id", this);
        }

        public IntColumnBuilder enterChemCompDescriptorId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "chem_comp_descriptor_id", this);
        }

        public StrColumnBuilder enterAmbiguousStoichiometryFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ambiguous_stoichiometry_flag", this);
        }

        public FloatColumnBuilder enterProbeStoichiometry() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "probe_stoichiometry", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public IntColumnBuilder enterDatasetListId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "dataset_list_id", this);
        }

    }

    public static class IhmLigandProbeBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_ligand_probe";

        public IhmLigandProbeBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterProbeId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "probe_id", this);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public IntColumnBuilder enterDatasetListId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "dataset_list_id", this);
        }

    }

    public static class IhmEprRestraintBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_epr_restraint";

        public IhmEprRestraintBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterOrdinalId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal_id", this);
        }

        public IntColumnBuilder enterDatasetListId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "dataset_list_id", this);
        }

        public IntColumnBuilder enterModelId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "model_id", this);
        }

        public StrColumnBuilder enterFittingParticleType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "fitting_particle_type", this);
        }

        public StrColumnBuilder enterFittingMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "fitting_method", this);
        }

        public StrColumnBuilder enterFittingMethodCitationId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "fitting_method_citation_id", this);
        }

        public StrColumnBuilder enterFittingState() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "fitting_state", this);
        }

        public IntColumnBuilder enterFittingSoftwareId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "fitting_software_id", this);
        }

        public FloatColumnBuilder enterChiValue() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "chi_value", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class IhmCrossLinkListBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_cross_link_list";

        public IhmCrossLinkListBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterGroupId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "group_id", this);
        }

        public StrColumnBuilder enterEntityDescription1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_description_1", this);
        }

        public StrColumnBuilder enterEntityDescription2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_description_2", this);
        }

        public StrColumnBuilder enterEntityId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id_1", this);
        }

        public StrColumnBuilder enterEntityId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id_2", this);
        }

        public StrColumnBuilder enterCompId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id_1", this);
        }

        public StrColumnBuilder enterCompId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id_2", this);
        }

        public IntColumnBuilder enterSeqId1() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "seq_id_1", this);
        }

        public IntColumnBuilder enterSeqId2() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "seq_id_2", this);
        }

        public StrColumnBuilder enterLinkerType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "linker_type", this);
        }

        public IntColumnBuilder enterLinkerChemCompDescriptorId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "linker_chem_comp_descriptor_id", this);
        }

        public IntColumnBuilder enterDatasetListId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "dataset_list_id", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class IhmCrossLinkRestraintBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_cross_link_restraint";

        public IhmCrossLinkRestraintBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterGroupId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "group_id", this);
        }

        public StrColumnBuilder enterEntityId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id_1", this);
        }

        public StrColumnBuilder enterEntityId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id_2", this);
        }

        public StrColumnBuilder enterAsymId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "asym_id_1", this);
        }

        public StrColumnBuilder enterAsymId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "asym_id_2", this);
        }

        public StrColumnBuilder enterCompId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id_1", this);
        }

        public StrColumnBuilder enterCompId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id_2", this);
        }

        public IntColumnBuilder enterSeqId1() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "seq_id_1", this);
        }

        public IntColumnBuilder enterSeqId2() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "seq_id_2", this);
        }

        public StrColumnBuilder enterAtomId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id_1", this);
        }

        public StrColumnBuilder enterAtomId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id_2", this);
        }

        public StrColumnBuilder enterRestraintType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "restraint_type", this);
        }

        public StrColumnBuilder enterConditionalCrosslinkFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "conditional_crosslink_flag", this);
        }

        public StrColumnBuilder enterModelGranularity() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "model_granularity", this);
        }

        public FloatColumnBuilder enterDistanceThreshold() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "distance_threshold", this);
        }

        public FloatColumnBuilder enterPsi() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "psi", this);
        }

        public FloatColumnBuilder enterSigma1() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "sigma_1", this);
        }

        public FloatColumnBuilder enterSigma2() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "sigma_2", this);
        }

        public StrColumnBuilder enterPseudoSiteFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "pseudo_site_flag", this);
        }

    }

    public static class IhmCrossLinkPseudoSiteBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_cross_link_pseudo_site";

        public IhmCrossLinkPseudoSiteBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterRestraintId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "restraint_id", this);
        }

        public StrColumnBuilder enterCrossLinkPartner() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "cross_link_partner", this);
        }

        public IntColumnBuilder enterPseudoSiteId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pseudo_site_id", this);
        }

        public IntColumnBuilder enterModelId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "model_id", this);
        }

    }

    public static class IhmCrossLinkResultBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_cross_link_result";

        public IhmCrossLinkResultBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterRestraintId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "restraint_id", this);
        }

        public IntColumnBuilder enterEnsembleId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ensemble_id", this);
        }

        public IntColumnBuilder enterNumModels() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "num_models", this);
        }

        public FloatColumnBuilder enterDistanceThreshold() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "distance_threshold", this);
        }

        public FloatColumnBuilder enterMedianDistance() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "median_distance", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class IhmCrossLinkResultParametersBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_cross_link_result_parameters";

        public IhmCrossLinkResultParametersBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterRestraintId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "restraint_id", this);
        }

        public IntColumnBuilder enterModelId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "model_id", this);
        }

        public FloatColumnBuilder enterPsi() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "psi", this);
        }

        public FloatColumnBuilder enterSigma1() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "sigma_1", this);
        }

        public FloatColumnBuilder enterSigma2() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "sigma_2", this);
        }

    }

    public static class Ihm2demClassAverageRestraintBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_2dem_class_average_restraint";

        public Ihm2demClassAverageRestraintBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterDatasetListId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "dataset_list_id", this);
        }

        public IntColumnBuilder enterNumberRawMicrographs() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number_raw_micrographs", this);
        }

        public FloatColumnBuilder enterPixelSizeWidth() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pixel_size_width", this);
        }

        public FloatColumnBuilder enterPixelSizeHeight() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "pixel_size_height", this);
        }

        public FloatColumnBuilder enterImageResolution() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "image_resolution", this);
        }

        public StrColumnBuilder enterImageSegmentFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "image_segment_flag", this);
        }

        public IntColumnBuilder enterNumberOfProjections() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number_of_projections", this);
        }

        public IntColumnBuilder enterStructAssemblyId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "struct_assembly_id", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class Ihm2demClassAverageFittingBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_2dem_class_average_fitting";

        public Ihm2demClassAverageFittingBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterRestraintId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "restraint_id", this);
        }

        public IntColumnBuilder enterModelId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "model_id", this);
        }

        public FloatColumnBuilder enterCrossCorrelationCoefficient() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "cross_correlation_coefficient", this);
        }

        public FloatColumnBuilder enterRotMatrix11() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rot_matrix[1][1]", this);
        }

        public FloatColumnBuilder enterRotMatrix21() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rot_matrix[2][1]", this);
        }

        public FloatColumnBuilder enterRotMatrix31() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rot_matrix[3][1]", this);
        }

        public FloatColumnBuilder enterRotMatrix12() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rot_matrix[1][2]", this);
        }

        public FloatColumnBuilder enterRotMatrix22() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rot_matrix[2][2]", this);
        }

        public FloatColumnBuilder enterRotMatrix32() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rot_matrix[3][2]", this);
        }

        public FloatColumnBuilder enterRotMatrix13() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rot_matrix[1][3]", this);
        }

        public FloatColumnBuilder enterRotMatrix23() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rot_matrix[2][3]", this);
        }

        public FloatColumnBuilder enterRotMatrix33() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rot_matrix[3][3]", this);
        }

        public FloatColumnBuilder enterTrVector1() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "tr_vector[1]", this);
        }

        public FloatColumnBuilder enterTrVector2() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "tr_vector[2]", this);
        }

        public FloatColumnBuilder enterTrVector3() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "tr_vector[3]", this);
        }

    }

    public static class Ihm3demRestraintBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_3dem_restraint";

        public Ihm3demRestraintBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterDatasetListId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "dataset_list_id", this);
        }

        public IntColumnBuilder enterModelId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "model_id", this);
        }

        public IntColumnBuilder enterStructAssemblyId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "struct_assembly_id", this);
        }

        public StrColumnBuilder enterFittingMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "fitting_method", this);
        }

        public IntColumnBuilder enterNumberOfGaussians() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "number_of_gaussians", this);
        }

        public StrColumnBuilder enterMapSegmentFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "map_segment_flag", this);
        }

        public FloatColumnBuilder enterCrossCorrelationCoefficient() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "cross_correlation_coefficient", this);
        }

        public StrColumnBuilder enterFittingMethodCitationId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "fitting_method_citation_id", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class IhmSasRestraintBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_sas_restraint";

        public IhmSasRestraintBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterDatasetListId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "dataset_list_id", this);
        }

        public IntColumnBuilder enterModelId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "model_id", this);
        }

        public IntColumnBuilder enterStructAssemblyId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "struct_assembly_id", this);
        }

        public StrColumnBuilder enterProfileSegmentFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "profile_segment_flag", this);
        }

        public StrColumnBuilder enterFittingAtomType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "fitting_atom_type", this);
        }

        public StrColumnBuilder enterFittingMethod() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "fitting_method", this);
        }

        public StrColumnBuilder enterFittingState() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "fitting_state", this);
        }

        public FloatColumnBuilder enterRadiusOfGyration() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "radius_of_gyration", this);
        }

        public FloatColumnBuilder enterChiValue() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "chi_value", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class IhmHdxRestraintBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_hdx_restraint";

        public IhmHdxRestraintBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterFeatureId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "feature_id", this);
        }

        public FloatColumnBuilder enterProtectionFactor() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "protection_factor", this);
        }

        public IntColumnBuilder enterDatasetListId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "dataset_list_id", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class IhmStartingModelCoordBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_starting_model_coord";

        public IhmStartingModelCoordBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterOrdinalId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal_id", this);
        }

        public StrColumnBuilder enterStartingModelId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "starting_model_id", this);
        }

        public StrColumnBuilder enterGroupPDB() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "group_PDB", this);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterTypeSymbol() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type_symbol", this);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public StrColumnBuilder enterAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id", this);
        }

        public StrColumnBuilder enterCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id", this);
        }

        public IntColumnBuilder enterSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "seq_id", this);
        }

        public StrColumnBuilder enterAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "asym_id", this);
        }

        public FloatColumnBuilder enterCartnX() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Cartn_x", this);
        }

        public FloatColumnBuilder enterCartnY() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Cartn_y", this);
        }

        public FloatColumnBuilder enterCartnZ() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Cartn_z", this);
        }

        public FloatColumnBuilder enterBIsoOrEquiv() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "B_iso_or_equiv", this);
        }

        public IntColumnBuilder enterFormalCharge() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "formal_charge", this);
        }

    }

    public static class IhmSphereObjSiteBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_sphere_obj_site";

        public IhmSphereObjSiteBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public IntColumnBuilder enterSeqIdBegin() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "seq_id_begin", this);
        }

        public IntColumnBuilder enterSeqIdEnd() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "seq_id_end", this);
        }

        public StrColumnBuilder enterAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "asym_id", this);
        }

        public FloatColumnBuilder enterCartnX() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Cartn_x", this);
        }

        public FloatColumnBuilder enterCartnY() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Cartn_y", this);
        }

        public FloatColumnBuilder enterCartnZ() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Cartn_z", this);
        }

        public FloatColumnBuilder enterObjectRadius() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "object_radius", this);
        }

        public FloatColumnBuilder enterRmsf() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rmsf", this);
        }

        public IntColumnBuilder enterModelId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "model_id", this);
        }

    }

    public static class IhmGaussianObjSiteBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_gaussian_obj_site";

        public IhmGaussianObjSiteBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public IntColumnBuilder enterSeqIdBegin() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "seq_id_begin", this);
        }

        public IntColumnBuilder enterSeqIdEnd() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "seq_id_end", this);
        }

        public StrColumnBuilder enterAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "asym_id", this);
        }

        public FloatColumnBuilder enterMeanCartnX() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "mean_Cartn_x", this);
        }

        public FloatColumnBuilder enterMeanCartnY() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "mean_Cartn_y", this);
        }

        public FloatColumnBuilder enterMeanCartnZ() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "mean_Cartn_z", this);
        }

        public FloatColumnBuilder enterWeight() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "weight", this);
        }

        public FloatColumnBuilder enterCovarianceMatrix11() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "covariance_matrix[1][1]", this);
        }

        public FloatColumnBuilder enterCovarianceMatrix12() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "covariance_matrix[1][2]", this);
        }

        public FloatColumnBuilder enterCovarianceMatrix13() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "covariance_matrix[1][3]", this);
        }

        public FloatColumnBuilder enterCovarianceMatrix21() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "covariance_matrix[2][1]", this);
        }

        public FloatColumnBuilder enterCovarianceMatrix22() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "covariance_matrix[2][2]", this);
        }

        public FloatColumnBuilder enterCovarianceMatrix23() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "covariance_matrix[2][3]", this);
        }

        public FloatColumnBuilder enterCovarianceMatrix31() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "covariance_matrix[3][1]", this);
        }

        public FloatColumnBuilder enterCovarianceMatrix32() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "covariance_matrix[3][2]", this);
        }

        public FloatColumnBuilder enterCovarianceMatrix33() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "covariance_matrix[3][3]", this);
        }

        public IntColumnBuilder enterModelId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "model_id", this);
        }

    }

    public static class IhmGaussianObjEnsembleBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_gaussian_obj_ensemble";

        public IhmGaussianObjEnsembleBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public IntColumnBuilder enterSeqIdBegin() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "seq_id_begin", this);
        }

        public IntColumnBuilder enterSeqIdEnd() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "seq_id_end", this);
        }

        public StrColumnBuilder enterAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "asym_id", this);
        }

        public FloatColumnBuilder enterMeanCartnX() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "mean_Cartn_x", this);
        }

        public FloatColumnBuilder enterMeanCartnY() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "mean_Cartn_y", this);
        }

        public FloatColumnBuilder enterMeanCartnZ() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "mean_Cartn_z", this);
        }

        public FloatColumnBuilder enterWeight() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "weight", this);
        }

        public FloatColumnBuilder enterCovarianceMatrix11() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "covariance_matrix[1][1]", this);
        }

        public FloatColumnBuilder enterCovarianceMatrix12() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "covariance_matrix[1][2]", this);
        }

        public FloatColumnBuilder enterCovarianceMatrix13() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "covariance_matrix[1][3]", this);
        }

        public FloatColumnBuilder enterCovarianceMatrix21() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "covariance_matrix[2][1]", this);
        }

        public FloatColumnBuilder enterCovarianceMatrix22() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "covariance_matrix[2][2]", this);
        }

        public FloatColumnBuilder enterCovarianceMatrix23() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "covariance_matrix[2][3]", this);
        }

        public FloatColumnBuilder enterCovarianceMatrix31() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "covariance_matrix[3][1]", this);
        }

        public FloatColumnBuilder enterCovarianceMatrix32() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "covariance_matrix[3][2]", this);
        }

        public FloatColumnBuilder enterCovarianceMatrix33() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "covariance_matrix[3][3]", this);
        }

        public IntColumnBuilder enterEnsembleId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ensemble_id", this);
        }

    }

    public static class IhmPseudoSiteBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_pseudo_site";

        public IhmPseudoSiteBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public FloatColumnBuilder enterCartnX() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Cartn_x", this);
        }

        public FloatColumnBuilder enterCartnY() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Cartn_y", this);
        }

        public FloatColumnBuilder enterCartnZ() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Cartn_z", this);
        }

        public FloatColumnBuilder enterRadius() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "radius", this);
        }

        public StrColumnBuilder enterDescription() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "description", this);
        }

    }

    public static class IhmResiduesNotModeledBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_residues_not_modeled";

        public IhmResiduesNotModeledBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterModelId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "model_id", this);
        }

        public StrColumnBuilder enterEntityDescription() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_description", this);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public StrColumnBuilder enterAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "asym_id", this);
        }

        public IntColumnBuilder enterSeqIdBegin() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "seq_id_begin", this);
        }

        public IntColumnBuilder enterSeqIdEnd() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "seq_id_end", this);
        }

        public StrColumnBuilder enterCompIdBegin() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id_begin", this);
        }

        public StrColumnBuilder enterCompIdEnd() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id_end", this);
        }

        public StrColumnBuilder enterReason() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "reason", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class IhmFeatureListBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_feature_list";

        public IhmFeatureListBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterFeatureId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "feature_id", this);
        }

        public StrColumnBuilder enterFeatureType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "feature_type", this);
        }

        public StrColumnBuilder enterEntityType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_type", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class IhmPseudoSiteFeatureBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_pseudo_site_feature";

        public IhmPseudoSiteFeatureBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterFeatureId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "feature_id", this);
        }

        public IntColumnBuilder enterPseudoSiteId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pseudo_site_id", this);
        }

    }

    public static class IhmPolyAtomFeatureBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_poly_atom_feature";

        public IhmPolyAtomFeatureBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterOrdinalId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal_id", this);
        }

        public IntColumnBuilder enterFeatureId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "feature_id", this);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public StrColumnBuilder enterAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "asym_id", this);
        }

        public StrColumnBuilder enterCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id", this);
        }

        public IntColumnBuilder enterSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "seq_id", this);
        }

        public StrColumnBuilder enterAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id", this);
        }

    }

    public static class IhmPolyResidueFeatureBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_poly_residue_feature";

        public IhmPolyResidueFeatureBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterOrdinalId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal_id", this);
        }

        public IntColumnBuilder enterFeatureId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "feature_id", this);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public StrColumnBuilder enterAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "asym_id", this);
        }

        public StrColumnBuilder enterCompIdBegin() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id_begin", this);
        }

        public StrColumnBuilder enterCompIdEnd() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id_end", this);
        }

        public IntColumnBuilder enterSeqIdBegin() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "seq_id_begin", this);
        }

        public IntColumnBuilder enterSeqIdEnd() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "seq_id_end", this);
        }

        public StrColumnBuilder enterResidueRangeGranularity() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "residue_range_granularity", this);
        }

        public StrColumnBuilder enterRepAtom() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "rep_atom", this);
        }

        public StrColumnBuilder enterInterfaceResidueFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "interface_residue_flag", this);
        }

    }

    public static class IhmNonPolyFeatureBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_non_poly_feature";

        public IhmNonPolyFeatureBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterOrdinalId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal_id", this);
        }

        public IntColumnBuilder enterFeatureId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "feature_id", this);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public StrColumnBuilder enterAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "asym_id", this);
        }

        public StrColumnBuilder enterCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id", this);
        }

        public StrColumnBuilder enterAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id", this);
        }

    }

    public static class IhmInterfaceResidueFeatureBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_interface_residue_feature";

        public IhmInterfaceResidueFeatureBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterOrdinalId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal_id", this);
        }

        public IntColumnBuilder enterFeatureId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "feature_id", this);
        }

        public StrColumnBuilder enterBindingPartnerEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "binding_partner_entity_id", this);
        }

        public StrColumnBuilder enterBindingPartnerAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "binding_partner_asym_id", this);
        }

        public IntColumnBuilder enterDatasetListId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "dataset_list_id", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class IhmDerivedDistanceRestraintBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_derived_distance_restraint";

        public IhmDerivedDistanceRestraintBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterGroupId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "group_id", this);
        }

        public IntColumnBuilder enterFeatureId1() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "feature_id_1", this);
        }

        public IntColumnBuilder enterFeatureId2() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "feature_id_2", this);
        }

        public StrColumnBuilder enterGroupConditionality() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "group_conditionality", this);
        }

        public FloatColumnBuilder enterRandomExclusionFraction() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "random_exclusion_fraction", this);
        }

        public FloatColumnBuilder enterDistanceLowerLimit() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "distance_lower_limit", this);
        }

        public FloatColumnBuilder enterDistanceUpperLimit() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "distance_upper_limit", this);
        }

        public FloatColumnBuilder enterDistanceLowerLimitEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "distance_lower_limit_esd", this);
        }

        public FloatColumnBuilder enterDistanceUpperLimitEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "distance_upper_limit_esd", this);
        }

        public FloatColumnBuilder enterProbability() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "probability", this);
        }

        public StrColumnBuilder enterRestraintType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "restraint_type", this);
        }

        public FloatColumnBuilder enterMicValue() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "mic_value", this);
        }

        public FloatColumnBuilder enterDistanceThresholdMean() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "distance_threshold_mean", this);
        }

        public FloatColumnBuilder enterDistanceThresholdEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "distance_threshold_esd", this);
        }

        public IntColumnBuilder enterDatasetListId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "dataset_list_id", this);
        }

    }

    public static class IhmDerivedAngleRestraintBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_derived_angle_restraint";

        public IhmDerivedAngleRestraintBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterGroupId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "group_id", this);
        }

        public IntColumnBuilder enterFeatureId1() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "feature_id_1", this);
        }

        public IntColumnBuilder enterFeatureId2() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "feature_id_2", this);
        }

        public IntColumnBuilder enterFeatureId3() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "feature_id_3", this);
        }

        public StrColumnBuilder enterGroupConditionality() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "group_conditionality", this);
        }

        public FloatColumnBuilder enterAngleLowerLimit() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "angle_lower_limit", this);
        }

        public FloatColumnBuilder enterAngleUpperLimit() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "angle_upper_limit", this);
        }

        public FloatColumnBuilder enterAngleLowerLimitEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "angle_lower_limit_esd", this);
        }

        public FloatColumnBuilder enterAngleUpperLimitEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "angle_upper_limit_esd", this);
        }

        public FloatColumnBuilder enterProbability() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "probability", this);
        }

        public StrColumnBuilder enterRestraintType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "restraint_type", this);
        }

        public FloatColumnBuilder enterAngleThresholdMean() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "angle_threshold_mean", this);
        }

        public FloatColumnBuilder enterAngleThresholdEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "angle_threshold_esd", this);
        }

        public IntColumnBuilder enterDatasetListId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "dataset_list_id", this);
        }

    }

    public static class IhmDerivedDihedralRestraintBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_derived_dihedral_restraint";

        public IhmDerivedDihedralRestraintBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterGroupId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "group_id", this);
        }

        public IntColumnBuilder enterFeatureId1() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "feature_id_1", this);
        }

        public IntColumnBuilder enterFeatureId2() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "feature_id_2", this);
        }

        public IntColumnBuilder enterFeatureId3() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "feature_id_3", this);
        }

        public IntColumnBuilder enterFeatureId4() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "feature_id_4", this);
        }

        public StrColumnBuilder enterGroupConditionality() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "group_conditionality", this);
        }

        public FloatColumnBuilder enterDihedralLowerLimit() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "dihedral_lower_limit", this);
        }

        public FloatColumnBuilder enterDihedralUpperLimit() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "dihedral_upper_limit", this);
        }

        public FloatColumnBuilder enterDihedralLowerLimitEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "dihedral_lower_limit_esd", this);
        }

        public FloatColumnBuilder enterDihedralUpperLimitEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "dihedral_upper_limit_esd", this);
        }

        public FloatColumnBuilder enterProbability() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "probability", this);
        }

        public StrColumnBuilder enterRestraintType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "restraint_type", this);
        }

        public FloatColumnBuilder enterDihedralThresholdMean() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "dihedral_threshold_mean", this);
        }

        public FloatColumnBuilder enterDihedralThresholdEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "dihedral_threshold_esd", this);
        }

        public IntColumnBuilder enterDatasetListId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "dataset_list_id", this);
        }

    }

    public static class IhmGeometricObjectListBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_geometric_object_list";

        public IhmGeometricObjectListBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterObjectId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "object_id", this);
        }

        public StrColumnBuilder enterObjectType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "object_type", this);
        }

        public StrColumnBuilder enterObjectName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "object_name", this);
        }

        public StrColumnBuilder enterObjectDescription() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "object_description", this);
        }

    }

    public static class IhmGeometricObjectCenterBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_geometric_object_center";

        public IhmGeometricObjectCenterBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public FloatColumnBuilder enterXcoord() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "xcoord", this);
        }

        public FloatColumnBuilder enterYcoord() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "ycoord", this);
        }

        public FloatColumnBuilder enterZcoord() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "zcoord", this);
        }

    }

    public static class IhmGeometricObjectTransformationBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_geometric_object_transformation";

        public IhmGeometricObjectTransformationBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public FloatColumnBuilder enterRotMatrix11() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rot_matrix[1][1]", this);
        }

        public FloatColumnBuilder enterRotMatrix21() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rot_matrix[2][1]", this);
        }

        public FloatColumnBuilder enterRotMatrix31() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rot_matrix[3][1]", this);
        }

        public FloatColumnBuilder enterRotMatrix12() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rot_matrix[1][2]", this);
        }

        public FloatColumnBuilder enterRotMatrix22() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rot_matrix[2][2]", this);
        }

        public FloatColumnBuilder enterRotMatrix32() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rot_matrix[3][2]", this);
        }

        public FloatColumnBuilder enterRotMatrix13() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rot_matrix[1][3]", this);
        }

        public FloatColumnBuilder enterRotMatrix23() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rot_matrix[2][3]", this);
        }

        public FloatColumnBuilder enterRotMatrix33() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rot_matrix[3][3]", this);
        }

        public FloatColumnBuilder enterTrVector1() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "tr_vector[1]", this);
        }

        public FloatColumnBuilder enterTrVector2() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "tr_vector[2]", this);
        }

        public FloatColumnBuilder enterTrVector3() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "tr_vector[3]", this);
        }

    }

    public static class IhmGeometricObjectSphereBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_geometric_object_sphere";

        public IhmGeometricObjectSphereBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterObjectId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "object_id", this);
        }

        public IntColumnBuilder enterCenterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "center_id", this);
        }

        public IntColumnBuilder enterTransformationId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "transformation_id", this);
        }

        public FloatColumnBuilder enterRadiusR() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "radius_r", this);
        }

    }

    public static class IhmGeometricObjectTorusBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_geometric_object_torus";

        public IhmGeometricObjectTorusBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterObjectId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "object_id", this);
        }

        public IntColumnBuilder enterCenterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "center_id", this);
        }

        public IntColumnBuilder enterTransformationId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "transformation_id", this);
        }

        public FloatColumnBuilder enterMajorRadiusR() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "major_radius_R", this);
        }

        public FloatColumnBuilder enterMinorRadiusR() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "minor_radius_r", this);
        }

    }

    public static class IhmGeometricObjectHalfTorusBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_geometric_object_half_torus";

        public IhmGeometricObjectHalfTorusBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterObjectId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "object_id", this);
        }

        public FloatColumnBuilder enterThicknessTh() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "thickness_th", this);
        }

        public StrColumnBuilder enterSection() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "section", this);
        }

    }

    public static class IhmGeometricObjectAxisBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_geometric_object_axis";

        public IhmGeometricObjectAxisBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterObjectId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "object_id", this);
        }

        public StrColumnBuilder enterAxisType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "axis_type", this);
        }

        public IntColumnBuilder enterTransformationId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "transformation_id", this);
        }

    }

    public static class IhmGeometricObjectPlaneBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_geometric_object_plane";

        public IhmGeometricObjectPlaneBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterObjectId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "object_id", this);
        }

        public StrColumnBuilder enterPlaneType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "plane_type", this);
        }

        public IntColumnBuilder enterTransformationId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "transformation_id", this);
        }

    }

    public static class IhmGeometricObjectDistanceRestraintBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ihm_geometric_object_distance_restraint";

        public IhmGeometricObjectDistanceRestraintBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterObjectId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "object_id", this);
        }

        public IntColumnBuilder enterFeatureId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "feature_id", this);
        }

        public StrColumnBuilder enterObjectCharacteristic() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "object_characteristic", this);
        }

        public StrColumnBuilder enterRestraintType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "restraint_type", this);
        }

        public FloatColumnBuilder enterHarmonicForceConstant() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "harmonic_force_constant", this);
        }

        public StrColumnBuilder enterGroupConditionality() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "group_conditionality", this);
        }

        public FloatColumnBuilder enterDistanceLowerLimit() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "distance_lower_limit", this);
        }

        public FloatColumnBuilder enterDistanceUpperLimit() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "distance_upper_limit", this);
        }

        public FloatColumnBuilder enterDistanceLowerLimitEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "distance_lower_limit_esd", this);
        }

        public FloatColumnBuilder enterDistanceUpperLimitEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "distance_upper_limit_esd", this);
        }

        public FloatColumnBuilder enterDistanceProbability() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "distance_probability", this);
        }

        public IntColumnBuilder enterDatasetListId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "dataset_list_id", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class MaModelListBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ma_model_list";

        public MaModelListBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterOrdinalId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal_id", this);
        }

        public IntColumnBuilder enterModelId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "model_id", this);
        }

        public IntColumnBuilder enterModelGroupId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "model_group_id", this);
        }

        public StrColumnBuilder enterModelName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "model_name", this);
        }

        public StrColumnBuilder enterModelGroupName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "model_group_name", this);
        }

        public IntColumnBuilder enterAssemblyId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "assembly_id", this);
        }

        public StrColumnBuilder enterModelType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "model_type", this);
        }

        public StrColumnBuilder enterModelTypeOtherDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "model_type_other_details", this);
        }

        public IntColumnBuilder enterDataId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "data_id", this);
        }

    }

    public static class MaTemplateDetailsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ma_template_details";

        public MaTemplateDetailsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterOrdinalId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal_id", this);
        }

        public IntColumnBuilder enterTemplateId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "template_id", this);
        }

        public StrColumnBuilder enterTemplateEntityType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "template_entity_type", this);
        }

        public StrColumnBuilder enterTemplateOrigin() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "template_origin", this);
        }

        public IntColumnBuilder enterTemplateDataId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "template_data_id", this);
        }

        public StrColumnBuilder enterTargetAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "target_asym_id", this);
        }

        public StrColumnBuilder enterTemplateAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "template_auth_asym_id", this);
        }

        public StrColumnBuilder enterTemplateLabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "template_label_asym_id", this);
        }

        public StrColumnBuilder enterTemplateLabelEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "template_label_entity_id", this);
        }

        public IntColumnBuilder enterTemplateModelNum() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "template_model_num", this);
        }

        public IntColumnBuilder enterTemplateTransMatrixId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "template_trans_matrix_id", this);
        }

        public StrColumnBuilder enterTemplateName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "template_name", this);
        }

        public StrColumnBuilder enterTemplateDescription() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "template_description", this);
        }

    }

    public static class MaTemplatePolyBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ma_template_poly";

        public MaTemplatePolyBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterTemplateId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "template_id", this);
        }

        public StrColumnBuilder enterSeqOneLetterCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "seq_one_letter_code", this);
        }

        public StrColumnBuilder enterSeqOneLetterCodeCan() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "seq_one_letter_code_can", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class MaTemplateNonPolyBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ma_template_non_poly";

        public MaTemplateNonPolyBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterTemplateId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "template_id", this);
        }

        public StrColumnBuilder enterCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id", this);
        }

        public StrColumnBuilder enterSmiles() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "smiles", this);
        }

        public StrColumnBuilder enterSmilesCanonical() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "smiles_canonical", this);
        }

        public StrColumnBuilder enterInchi() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "inchi", this);
        }

        public StrColumnBuilder enterInchiKey() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "inchi_key", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class MaTemplatePolySegmentBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ma_template_poly_segment";

        public MaTemplatePolySegmentBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterTemplateId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "template_id", this);
        }

        public IntColumnBuilder enterResidueNumberBegin() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "residue_number_begin", this);
        }

        public IntColumnBuilder enterResidueNumberEnd() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "residue_number_end", this);
        }

        public StrColumnBuilder enterResidueNameBegin() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "residue_name_begin", this);
        }

        public StrColumnBuilder enterResidueNameEnd() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "residue_name_end", this);
        }

        public IntColumnBuilder enterSegmentLength() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "segment_length", this);
        }

    }

    public static class MaTemplateRefDbDetailsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ma_template_ref_db_details";

        public MaTemplateRefDbDetailsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterTemplateId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "template_id", this);
        }

        public StrColumnBuilder enterDbName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "db_name", this);
        }

        public StrColumnBuilder enterDbNameOtherDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "db_name_other_details", this);
        }

        public StrColumnBuilder enterDbAccessionCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "db_accession_code", this);
        }

        public StrColumnBuilder enterDbVersionDate() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "db_version_date", this);
        }

    }

    public static class MaTemplateCustomizedBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ma_template_customized";

        public MaTemplateCustomizedBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterTemplateId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "template_id", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class MaTemplateTransMatrixBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ma_template_trans_matrix";

        public MaTemplateTransMatrixBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public FloatColumnBuilder enterRotMatrix11() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rot_matrix[1][1]", this);
        }

        public FloatColumnBuilder enterRotMatrix21() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rot_matrix[2][1]", this);
        }

        public FloatColumnBuilder enterRotMatrix31() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rot_matrix[3][1]", this);
        }

        public FloatColumnBuilder enterRotMatrix12() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rot_matrix[1][2]", this);
        }

        public FloatColumnBuilder enterRotMatrix22() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rot_matrix[2][2]", this);
        }

        public FloatColumnBuilder enterRotMatrix32() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rot_matrix[3][2]", this);
        }

        public FloatColumnBuilder enterRotMatrix13() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rot_matrix[1][3]", this);
        }

        public FloatColumnBuilder enterRotMatrix23() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rot_matrix[2][3]", this);
        }

        public FloatColumnBuilder enterRotMatrix33() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "rot_matrix[3][3]", this);
        }

        public FloatColumnBuilder enterTrVector1() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "tr_vector[1]", this);
        }

        public FloatColumnBuilder enterTrVector2() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "tr_vector[2]", this);
        }

        public FloatColumnBuilder enterTrVector3() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "tr_vector[3]", this);
        }

    }

    public static class MaTargetEntityBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ma_target_entity";

        public MaTargetEntityBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public IntColumnBuilder enterDataId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "data_id", this);
        }

        public StrColumnBuilder enterOrigin() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "origin", this);
        }

    }

    public static class MaTargetEntityInstanceBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ma_target_entity_instance";

        public MaTargetEntityInstanceBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "asym_id", this);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class MaTargetRefDbDetailsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ma_target_ref_db_details";

        public MaTargetRefDbDetailsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public StrColumnBuilder enterTargetEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "target_entity_id", this);
        }

        public StrColumnBuilder enterDbName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "db_name", this);
        }

        public StrColumnBuilder enterDbNameOtherDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "db_name_other_details", this);
        }

        public StrColumnBuilder enterDbCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "db_code", this);
        }

        public StrColumnBuilder enterDbAccession() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "db_accession", this);
        }

        public StrColumnBuilder enterSeqDbIsoform() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "seq_db_isoform", this);
        }

        public StrColumnBuilder enterSeqDbAlignBegin() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "seq_db_align_begin", this);
        }

        public StrColumnBuilder enterSeqDbAlignEnd() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "seq_db_align_end", this);
        }

        public StrColumnBuilder enterNcbiTaxonomyId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "ncbi_taxonomy_id", this);
        }

        public StrColumnBuilder enterOrganismScientific() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "organism_scientific", this);
        }

        public StrColumnBuilder enterGeneName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "gene_name", this);
        }

        public StrColumnBuilder enterSeqDbSequenceChecksum() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "seq_db_sequence_checksum", this);
        }

        public StrColumnBuilder enterSeqDbSequenceVersionDate() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "seq_db_sequence_version_date", this);
        }

    }

    public static class MaTargetTemplatePolyMappingBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ma_target_template_poly_mapping";

        public MaTargetTemplatePolyMappingBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterTemplateSegmentId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "template_segment_id", this);
        }

        public StrColumnBuilder enterTargetAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "target_asym_id", this);
        }

        public IntColumnBuilder enterTargetSeqIdBegin() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "target_seq_id_begin", this);
        }

        public IntColumnBuilder enterTargetSeqIdEnd() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "target_seq_id_end", this);
        }

    }

    public static class MaStructAssemblyBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ma_struct_assembly";

        public MaStructAssemblyBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterOrdinalId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal_id", this);
        }

        public IntColumnBuilder enterAssemblyId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "assembly_id", this);
        }

        public StrColumnBuilder enterEntityDescription() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_description", this);
        }

        public StrColumnBuilder enterEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id", this);
        }

        public StrColumnBuilder enterAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "asym_id", this);
        }

        public IntColumnBuilder enterSeqIdBegin() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "seq_id_begin", this);
        }

        public IntColumnBuilder enterSeqIdEnd() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "seq_id_end", this);
        }

    }

    public static class MaStructAssemblyDetailsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ma_struct_assembly_details";

        public MaStructAssemblyDetailsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterAssemblyId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "assembly_id", this);
        }

        public StrColumnBuilder enterAssemblyName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "assembly_name", this);
        }

        public StrColumnBuilder enterAssemblyDescription() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "assembly_description", this);
        }

    }

    public static class MaAlignmentInfoBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ma_alignment_info";

        public MaAlignmentInfoBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterAlignmentId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "alignment_id", this);
        }

        public IntColumnBuilder enterDataId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "data_id", this);
        }

        public IntColumnBuilder enterSoftwareGroupId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "software_group_id", this);
        }

        public IntColumnBuilder enterAlignmentLength() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "alignment_length", this);
        }

        public StrColumnBuilder enterAlignmentType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "alignment_type", this);
        }

        public StrColumnBuilder enterAlignmentTypeOtherDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "alignment_type_other_details", this);
        }

        public StrColumnBuilder enterAlignmentMode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "alignment_mode", this);
        }

    }

    public static class MaAlignmentDetailsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ma_alignment_details";

        public MaAlignmentDetailsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterOrdinalId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal_id", this);
        }

        public IntColumnBuilder enterAlignmentId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "alignment_id", this);
        }

        public IntColumnBuilder enterTemplateSegmentId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "template_segment_id", this);
        }

        public StrColumnBuilder enterTargetAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "target_asym_id", this);
        }

        public StrColumnBuilder enterScoreType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "score_type", this);
        }

        public StrColumnBuilder enterScoreTypeOtherDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "score_type_other_details", this);
        }

        public FloatColumnBuilder enterScoreValue() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "score_value", this);
        }

        public FloatColumnBuilder enterPercentSequenceIdentity() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "percent_sequence_identity", this);
        }

        public StrColumnBuilder enterSequenceIdentityDenominator() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "sequence_identity_denominator", this);
        }

        public StrColumnBuilder enterSequenceIdentityDenominatorOtherDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "sequence_identity_denominator_other_details", this);
        }

    }

    public static class MaAlignmentBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ma_alignment";

        public MaAlignmentBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterOrdinalId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal_id", this);
        }

        public IntColumnBuilder enterAlignmentId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "alignment_id", this);
        }

        public StrColumnBuilder enterTargetTemplateFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "target_template_flag", this);
        }

        public StrColumnBuilder enterSequence() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "sequence", this);
        }

    }

    public static class MaTemplateCoordBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ma_template_coord";

        public MaTemplateCoordBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterOrdinalId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal_id", this);
        }

        public IntColumnBuilder enterTemplateId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "template_id", this);
        }

        public StrColumnBuilder enterGroupPDB() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "group_PDB", this);
        }

        public StrColumnBuilder enterTypeSymbol() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type_symbol", this);
        }

        public StrColumnBuilder enterLabelEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_entity_id", this);
        }

        public StrColumnBuilder enterLabelAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_atom_id", this);
        }

        public StrColumnBuilder enterLabelCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_comp_id", this);
        }

        public IntColumnBuilder enterLabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "label_seq_id", this);
        }

        public StrColumnBuilder enterLabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_asym_id", this);
        }

        public IntColumnBuilder enterAuthSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "auth_seq_id", this);
        }

        public StrColumnBuilder enterAuthAtomId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_atom_id", this);
        }

        public StrColumnBuilder enterAuthCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_comp_id", this);
        }

        public StrColumnBuilder enterAuthAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "auth_asym_id", this);
        }

        public FloatColumnBuilder enterCartnX() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Cartn_x", this);
        }

        public FloatColumnBuilder enterCartnY() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Cartn_y", this);
        }

        public FloatColumnBuilder enterCartnZ() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "Cartn_z", this);
        }

        public FloatColumnBuilder enterOccupancy() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "occupancy", this);
        }

        public FloatColumnBuilder enterBIsoOrEquiv() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "B_iso_or_equiv", this);
        }

        public IntColumnBuilder enterFormalCharge() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "formal_charge", this);
        }

        public IntColumnBuilder enterPdbModelNum() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "pdb_model_num", this);
        }

    }

    public static class MaDataBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ma_data";

        public MaDataBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterContentType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "content_type", this);
        }

        public StrColumnBuilder enterContentTypeOtherDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "content_type_other_details", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

    }

    public static class MaDataGroupBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ma_data_group";

        public MaDataGroupBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterOrdinalId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal_id", this);
        }

        public IntColumnBuilder enterGroupId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "group_id", this);
        }

        public IntColumnBuilder enterDataId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "data_id", this);
        }

    }

    public static class MaDataRefDbBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ma_data_ref_db";

        public MaDataRefDbBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterDataId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "data_id", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public StrColumnBuilder enterLocationUrl() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "location_url", this);
        }

        public StrColumnBuilder enterVersion() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "version", this);
        }

        public StrColumnBuilder enterReleaseDate() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "release_date", this);
        }

    }

    public static class MaCoevolutionSeqDbRefBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ma_coevolution_seq_db_ref";

        public MaCoevolutionSeqDbRefBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "seq_id", this);
        }

        public StrColumnBuilder enterDbName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "db_name", this);
        }

        public StrColumnBuilder enterDbCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "db_code", this);
        }

        public StrColumnBuilder enterDbAccession() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "db_accession", this);
        }

        public StrColumnBuilder enterDbIsoform() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "db_isoform", this);
        }

        public StrColumnBuilder enterSeqDbAlignBegin() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "seq_db_align_begin", this);
        }

        public StrColumnBuilder enterSeqDbAlignEnd() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "seq_db_align_end", this);
        }

    }

    public static class MaCoevolutionMsaBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ma_coevolution_msa";

        public MaCoevolutionMsaBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterOrdinalId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal_id", this);
        }

        public IntColumnBuilder enterMsaId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "msa_id", this);
        }

        public IntColumnBuilder enterSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "seq_id", this);
        }

        public StrColumnBuilder enterSequence() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "sequence", this);
        }

    }

    public static class MaCoevolutionMsaDetailsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ma_coevolution_msa_details";

        public MaCoevolutionMsaDetailsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterMsaId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "msa_id", this);
        }

        public StrColumnBuilder enterTargetEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "target_entity_id", this);
        }

        public StrColumnBuilder enterTargetSequence() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "target_sequence", this);
        }

        public StrColumnBuilder enterSeqClustDb() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "seq_clust_db", this);
        }

        public StrColumnBuilder enterSeqClustDbOtherDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "seq_clust_db_other_details", this);
        }

        public StrColumnBuilder enterSeqClustDbVersion() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "seq_clust_db_version", this);
        }

        public IntColumnBuilder enterDataId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "data_id", this);
        }

        public IntColumnBuilder enterSoftwareGroupId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "software_group_id", this);
        }

    }

    public static class MaRestraintsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ma_restraints";

        public MaRestraintsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterRestraintId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "restraint_id", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public StrColumnBuilder enterRestraintType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "restraint_type", this);
        }

        public StrColumnBuilder enterRestraintTypeOtherDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "restraint_type_other_details", this);
        }

        public IntColumnBuilder enterDataId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "data_id", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

    public static class MaDistanceRestraintsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ma_distance_restraints";

        public MaDistanceRestraintsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterOrdinalId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal_id", this);
        }

        public IntColumnBuilder enterRestraintId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "restraint_id", this);
        }

        public StrColumnBuilder enterEntityId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id_1", this);
        }

        public StrColumnBuilder enterEntityId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id_2", this);
        }

        public StrColumnBuilder enterAsymId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "asym_id_1", this);
        }

        public StrColumnBuilder enterAsymId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "asym_id_2", this);
        }

        public StrColumnBuilder enterCompId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id_1", this);
        }

        public StrColumnBuilder enterCompId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id_2", this);
        }

        public IntColumnBuilder enterSeqId1() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "seq_id_1", this);
        }

        public IntColumnBuilder enterSeqId2() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "seq_id_2", this);
        }

        public StrColumnBuilder enterAtomId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id_1", this);
        }

        public StrColumnBuilder enterAtomId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id_2", this);
        }

        public FloatColumnBuilder enterLowerLimit() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "lower_limit", this);
        }

        public FloatColumnBuilder enterUpperLimit() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "upper_limit", this);
        }

        public FloatColumnBuilder enterLowerLimitEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "lower_limit_esd", this);
        }

        public FloatColumnBuilder enterUpperLimitEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "upper_limit_esd", this);
        }

        public FloatColumnBuilder enterProbability() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "probability", this);
        }

        public StrColumnBuilder enterRestraintType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "restraint_type", this);
        }

        public StrColumnBuilder enterGranularity() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "granularity", this);
        }

    }

    public static class MaAngleRestraintsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ma_angle_restraints";

        public MaAngleRestraintsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterOrdinalId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal_id", this);
        }

        public IntColumnBuilder enterRestraintId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "restraint_id", this);
        }

        public StrColumnBuilder enterEntityId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id_1", this);
        }

        public StrColumnBuilder enterEntityId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id_2", this);
        }

        public StrColumnBuilder enterEntityId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id_3", this);
        }

        public StrColumnBuilder enterAsymId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "asym_id_1", this);
        }

        public StrColumnBuilder enterAsymId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "asym_id_2", this);
        }

        public StrColumnBuilder enterAsymId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "asym_id_3", this);
        }

        public StrColumnBuilder enterCompId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id_1", this);
        }

        public StrColumnBuilder enterCompId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id_2", this);
        }

        public StrColumnBuilder enterCompId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id_3", this);
        }

        public IntColumnBuilder enterSeqId1() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "seq_id_1", this);
        }

        public IntColumnBuilder enterSeqId2() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "seq_id_2", this);
        }

        public IntColumnBuilder enterSeqId3() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "seq_id_3", this);
        }

        public StrColumnBuilder enterAtomId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id_1", this);
        }

        public StrColumnBuilder enterAtomId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id_2", this);
        }

        public StrColumnBuilder enterAtomId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id_3", this);
        }

        public FloatColumnBuilder enterLowerLimit() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "lower_limit", this);
        }

        public FloatColumnBuilder enterUpperLimit() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "upper_limit", this);
        }

        public FloatColumnBuilder enterLowerLimitEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "lower_limit_esd", this);
        }

        public FloatColumnBuilder enterUpperLimitEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "upper_limit_esd", this);
        }

        public FloatColumnBuilder enterProbability() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "probability", this);
        }

        public StrColumnBuilder enterRestraintType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "restraint_type", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

    }

    public static class MaDihedralRestraintsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ma_dihedral_restraints";

        public MaDihedralRestraintsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterOrdinalId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal_id", this);
        }

        public IntColumnBuilder enterRestraintId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "restraint_id", this);
        }

        public StrColumnBuilder enterEntityId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id_1", this);
        }

        public StrColumnBuilder enterEntityId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id_2", this);
        }

        public StrColumnBuilder enterEntityId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id_3", this);
        }

        public StrColumnBuilder enterEntityId4() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entity_id_4", this);
        }

        public StrColumnBuilder enterAsymId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "asym_id_1", this);
        }

        public StrColumnBuilder enterAsymId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "asym_id_2", this);
        }

        public StrColumnBuilder enterAsymId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "asym_id_3", this);
        }

        public StrColumnBuilder enterAsymId4() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "asym_id_4", this);
        }

        public StrColumnBuilder enterCompId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id_1", this);
        }

        public StrColumnBuilder enterCompId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id_2", this);
        }

        public StrColumnBuilder enterCompId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id_3", this);
        }

        public StrColumnBuilder enterCompId4() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "comp_id_4", this);
        }

        public IntColumnBuilder enterSeqId1() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "seq_id_1", this);
        }

        public IntColumnBuilder enterSeqId2() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "seq_id_2", this);
        }

        public IntColumnBuilder enterSeqId3() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "seq_id_3", this);
        }

        public IntColumnBuilder enterSeqId4() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "seq_id_4", this);
        }

        public StrColumnBuilder enterAtomId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id_1", this);
        }

        public StrColumnBuilder enterAtomId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id_2", this);
        }

        public StrColumnBuilder enterAtomId3() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id_3", this);
        }

        public StrColumnBuilder enterAtomId4() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "atom_id_4", this);
        }

        public FloatColumnBuilder enterUncertainty() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "uncertainty", this);
        }

        public FloatColumnBuilder enterLowerLimit() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "lower_limit", this);
        }

        public FloatColumnBuilder enterUpperLimit() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "upper_limit", this);
        }

        public FloatColumnBuilder enterLowerLimitEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "lower_limit_esd", this);
        }

        public FloatColumnBuilder enterUpperLimitEsd() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "upper_limit_esd", this);
        }

        public FloatColumnBuilder enterProbability() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "probability", this);
        }

        public StrColumnBuilder enterRestraintType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "restraint_type", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

    }

    public static class MaRestraintsGroupBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ma_restraints_group";

        public MaRestraintsGroupBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterOrdinalId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal_id", this);
        }

        public IntColumnBuilder enterGroupId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "group_id", this);
        }

        public IntColumnBuilder enterRestraintId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "restraint_id", this);
        }

    }

    public static class MaProtocolStepBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ma_protocol_step";

        public MaProtocolStepBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterOrdinalId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal_id", this);
        }

        public IntColumnBuilder enterProtocolId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "protocol_id", this);
        }

        public IntColumnBuilder enterStepId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "step_id", this);
        }

        public StrColumnBuilder enterMethodType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "method_type", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterStepName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "step_name", this);
        }

        public IntColumnBuilder enterSoftwareGroupId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "software_group_id", this);
        }

        public IntColumnBuilder enterInputDataGroupId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "input_data_group_id", this);
        }

        public IntColumnBuilder enterOutputDataGroupId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "output_data_group_id", this);
        }

    }

    public static class MaSoftwareGroupBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ma_software_group";

        public MaSoftwareGroupBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterOrdinalId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal_id", this);
        }

        public IntColumnBuilder enterGroupId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "group_id", this);
        }

        public IntColumnBuilder enterSoftwareId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "software_id", this);
        }

        public IntColumnBuilder enterParameterGroupId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "parameter_group_id", this);
        }

    }

    public static class MaSoftwareParameterBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ma_software_parameter";

        public MaSoftwareParameterBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterParameterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "parameter_id", this);
        }

        public IntColumnBuilder enterGroupId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "group_id", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public StrColumnBuilder enterDescription() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "description", this);
        }

        public StrColumnBuilder enterValue() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "value", this);
        }

        public StrColumnBuilder enterDataType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "data_type", this);
        }

        public StrColumnBuilder enterDataTypeOtherDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "data_type_other_details", this);
        }

    }

    public static class MaPolyTemplateLibraryDetailsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ma_poly_template_library_details";

        public MaPolyTemplateLibraryDetailsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterLibraryId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "library_id", this);
        }

        public StrColumnBuilder enterTargetEntityId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "target_entity_id", this);
        }

        public StrColumnBuilder enterCustomizedFragmentLibraryFlag() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "customized_fragment_library_flag", this);
        }

        public IntColumnBuilder enterDataId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "data_id", this);
        }

        public IntColumnBuilder enterSoftwareGroupId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "software_group_id", this);
        }

        public StrColumnBuilder enterDescription() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "description", this);
        }

    }

    public static class MaPolyTemplateLibraryListBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ma_poly_template_library_list";

        public MaPolyTemplateLibraryListBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterTemplateId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "template_id", this);
        }

        public StrColumnBuilder enterDbName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "db_name", this);
        }

        public StrColumnBuilder enterDbAccessionCode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "db_accession_code", this);
        }

        public StrColumnBuilder enterAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "asym_id", this);
        }

        public StrColumnBuilder enterModelNum() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "model_num", this);
        }

        public IntColumnBuilder enterResidueNumberBegin() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "residue_number_begin", this);
        }

        public IntColumnBuilder enterResidueNumberEnd() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "residue_number_end", this);
        }

        public StrColumnBuilder enterResidueNameBegin() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "residue_name_begin", this);
        }

        public StrColumnBuilder enterResidueNameEnd() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "residue_name_end", this);
        }

    }

    public static class MaPolyTemplateLibraryComponentsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ma_poly_template_library_components";

        public MaPolyTemplateLibraryComponentsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterOrdinalId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal_id", this);
        }

        public IntColumnBuilder enterTemplateId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "template_id", this);
        }

        public IntColumnBuilder enterLibraryId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "library_id", this);
        }

    }

    public static class MaQaMetricBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ma_qa_metric";

        public MaQaMetricBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "name", this);
        }

        public StrColumnBuilder enterDescription() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "description", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public StrColumnBuilder enterTypeOtherDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type_other_details", this);
        }

        public StrColumnBuilder enterMode() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "mode", this);
        }

        public IntColumnBuilder enterSoftwareGroupId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "software_group_id", this);
        }

    }

    public static class MaQaMetricGlobalBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ma_qa_metric_global";

        public MaQaMetricGlobalBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterOrdinalId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal_id", this);
        }

        public IntColumnBuilder enterModelId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "model_id", this);
        }

        public IntColumnBuilder enterMetricId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "metric_id", this);
        }

        public FloatColumnBuilder enterMetricValue() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "metric_value", this);
        }

    }

    public static class MaQaMetricLocalBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ma_qa_metric_local";

        public MaQaMetricLocalBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterOrdinalId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal_id", this);
        }

        public IntColumnBuilder enterModelId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "model_id", this);
        }

        public StrColumnBuilder enterLabelAsymId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_asym_id", this);
        }

        public IntColumnBuilder enterLabelSeqId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "label_seq_id", this);
        }

        public StrColumnBuilder enterLabelCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_comp_id", this);
        }

        public IntColumnBuilder enterMetricId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "metric_id", this);
        }

        public FloatColumnBuilder enterMetricValue() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "metric_value", this);
        }

    }

    public static class MaQaMetricLocalPairwiseBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ma_qa_metric_local_pairwise";

        public MaQaMetricLocalPairwiseBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterOrdinalId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal_id", this);
        }

        public IntColumnBuilder enterModelId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "model_id", this);
        }

        public StrColumnBuilder enterLabelAsymId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_asym_id_1", this);
        }

        public IntColumnBuilder enterLabelSeqId1() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "label_seq_id_1", this);
        }

        public StrColumnBuilder enterLabelCompId1() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_comp_id_1", this);
        }

        public StrColumnBuilder enterLabelAsymId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_asym_id_2", this);
        }

        public IntColumnBuilder enterLabelSeqId2() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "label_seq_id_2", this);
        }

        public StrColumnBuilder enterLabelCompId2() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "label_comp_id_2", this);
        }

        public IntColumnBuilder enterMetricId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "metric_id", this);
        }

        public FloatColumnBuilder enterMetricValue() {
            return new FloatColumnBuilderImpl<>(CATEGORY_NAME, "metric_value", this);
        }

    }

    public static class MaEntryAssociatedFilesBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ma_entry_associated_files";

        public MaEntryAssociatedFilesBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public StrColumnBuilder enterEntryId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "entry_id", this);
        }

        public StrColumnBuilder enterFileType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "file_type", this);
        }

        public StrColumnBuilder enterFileUrl() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "file_url", this);
        }

        public StrColumnBuilder enterFileFormat() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "file_format", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

        public StrColumnBuilder enterFileContent() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "file_content", this);
        }

    }

    public static class MaAssociatedArchiveFileDetailsBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ma_associated_archive_file_details";

        public MaAssociatedArchiveFileDetailsBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "id", this);
        }

        public IntColumnBuilder enterArchiveFileId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "archive_file_id", this);
        }

        public StrColumnBuilder enterFilePath() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "file_path", this);
        }

        public StrColumnBuilder enterFileFormat() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "file_format", this);
        }

        public StrColumnBuilder enterFileContent() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "file_content", this);
        }

        public StrColumnBuilder enterDescription() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "description", this);
        }

    }

    public static class MaChemCompDescriptorBuilder extends MmCifCategoryBuilder {
        private static final String CATEGORY_NAME = "ma_chem_comp_descriptor";

        public MaChemCompDescriptorBuilder(MmCifBlockBuilder parent) {
            super(CATEGORY_NAME, parent);
        }

        public IntColumnBuilder enterOrdinalId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "ordinal_id", this);
        }

        public StrColumnBuilder enterChemCompId() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "chem_comp_id", this);
        }

        public StrColumnBuilder enterChemCompName() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "chem_comp_name", this);
        }

        public StrColumnBuilder enterType() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "type", this);
        }

        public StrColumnBuilder enterValue() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "value", this);
        }

        public IntColumnBuilder enterSoftwareId() {
            return new IntColumnBuilderImpl<>(CATEGORY_NAME, "software_id", this);
        }

        public StrColumnBuilder enterDetails() {
            return new StrColumnBuilderImpl<>(CATEGORY_NAME, "details", this);
        }

    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy