
// pybind 11 related includes
#include <pybind11/pybind11.h>
#include <pybind11/stl.h>

namespace py = pybind11;


// Standard Handle
#include <Standard_Handle.hxx>

// user-defined inclusion per module before includes

// includes to resolve forward declarations
#include <Adaptor2d_Curve2d.hxx>
#include <Adaptor3d_Curve.hxx>
#include <Adaptor3d_Surface.hxx>
#include <Adaptor2d_Curve2d.hxx>
#include <Adaptor3d_Curve.hxx>
#include <Adaptor3d_Surface.hxx>
#include <Adaptor2d_Curve2d.hxx>
#include <Adaptor3d_Curve.hxx>
#include <Adaptor3d_Surface.hxx>
#include <Adaptor2d_Curve2d.hxx>
#include <Adaptor3d_Curve.hxx>
#include <Adaptor3d_Surface.hxx>
#include <Adaptor2d_Curve2d.hxx>
#include <Adaptor3d_Curve.hxx>
#include <Adaptor3d_Surface.hxx>
#include <Adaptor2d_Curve2d.hxx>
#include <Adaptor3d_Curve.hxx>
#include <Adaptor3d_Surface.hxx>
#include <XCAFDimTolObjects_DatumObject.hxx>
#include <Adaptor2d_Curve2d.hxx>
#include <Adaptor3d_Curve.hxx>
#include <Adaptor3d_Surface.hxx>
#include <Adaptor2d_Curve2d.hxx>
#include <Adaptor3d_Curve.hxx>
#include <Adaptor3d_Surface.hxx>
#include <Adaptor2d_Curve2d.hxx>
#include <Adaptor3d_Curve.hxx>
#include <Adaptor3d_Surface.hxx>
#include <Adaptor2d_Curve2d.hxx>
#include <Adaptor3d_Curve.hxx>
#include <Adaptor3d_Surface.hxx>
#include <Adaptor2d_Curve2d.hxx>
#include <Adaptor3d_Curve.hxx>
#include <Adaptor3d_Surface.hxx>
#include <Adaptor2d_Curve2d.hxx>
#include <Adaptor3d_Curve.hxx>
#include <Adaptor3d_Surface.hxx>
#include <Adaptor2d_Curve2d.hxx>
#include <Adaptor3d_Curve.hxx>
#include <Adaptor3d_Surface.hxx>
#include <Adaptor2d_Curve2d.hxx>
#include <Adaptor3d_Curve.hxx>
#include <Adaptor3d_Surface.hxx>
#include <XCAFDimTolObjects_DimensionObject.hxx>
#include <Adaptor2d_Curve2d.hxx>
#include <Adaptor3d_Curve.hxx>
#include <Adaptor3d_Surface.hxx>
#include <Adaptor2d_Curve2d.hxx>
#include <Adaptor3d_Curve.hxx>
#include <Adaptor3d_Surface.hxx>
#include <Adaptor2d_Curve2d.hxx>
#include <Adaptor3d_Curve.hxx>
#include <Adaptor3d_Surface.hxx>
#include <Adaptor2d_Curve2d.hxx>
#include <Adaptor3d_Curve.hxx>
#include <Adaptor3d_Surface.hxx>
#include <Adaptor2d_Curve2d.hxx>
#include <Adaptor3d_Curve.hxx>
#include <Adaptor3d_Surface.hxx>
#include <Adaptor2d_Curve2d.hxx>
#include <Adaptor3d_Curve.hxx>
#include <Adaptor3d_Surface.hxx>
#include <Adaptor2d_Curve2d.hxx>
#include <Adaptor3d_Curve.hxx>
#include <Adaptor3d_Surface.hxx>
#include <XCAFDimTolObjects_GeomToleranceObject.hxx>
#include <Adaptor2d_Curve2d.hxx>
#include <Adaptor3d_Curve.hxx>
#include <Adaptor3d_Surface.hxx>
#include <Adaptor2d_Curve2d.hxx>
#include <Adaptor3d_Curve.hxx>
#include <Adaptor3d_Surface.hxx>
#include <Adaptor2d_Curve2d.hxx>
#include <Adaptor3d_Curve.hxx>
#include <Adaptor3d_Surface.hxx>
#include <Adaptor2d_Curve2d.hxx>
#include <Adaptor3d_Curve.hxx>
#include <Adaptor3d_Surface.hxx>
#include <Adaptor2d_Curve2d.hxx>
#include <Adaptor3d_Curve.hxx>
#include <Adaptor3d_Surface.hxx>

// module includes
#include <XCAFDimTolObjects_AngularQualifier.hxx>
#include <XCAFDimTolObjects_DataMapOfToleranceDatum.hxx>
#include <XCAFDimTolObjects_DatumModifiersSequence.hxx>
#include <XCAFDimTolObjects_DatumModifWithValue.hxx>
#include <XCAFDimTolObjects_DatumObject.hxx>
#include <XCAFDimTolObjects_DatumObjectSequence.hxx>
#include <XCAFDimTolObjects_DatumSingleModif.hxx>
#include <XCAFDimTolObjects_DatumTargetType.hxx>
#include <XCAFDimTolObjects_DimensionFormVariance.hxx>
#include <XCAFDimTolObjects_DimensionGrade.hxx>
#include <XCAFDimTolObjects_DimensionModif.hxx>
#include <XCAFDimTolObjects_DimensionModifiersSequence.hxx>
#include <XCAFDimTolObjects_DimensionObject.hxx>
#include <XCAFDimTolObjects_DimensionObjectSequence.hxx>
#include <XCAFDimTolObjects_DimensionQualifier.hxx>
#include <XCAFDimTolObjects_DimensionType.hxx>
#include <XCAFDimTolObjects_GeomToleranceMatReqModif.hxx>
#include <XCAFDimTolObjects_GeomToleranceModif.hxx>
#include <XCAFDimTolObjects_GeomToleranceModifiersSequence.hxx>
#include <XCAFDimTolObjects_GeomToleranceObject.hxx>
#include <XCAFDimTolObjects_GeomToleranceObjectSequence.hxx>
#include <XCAFDimTolObjects_GeomToleranceType.hxx>
#include <XCAFDimTolObjects_GeomToleranceTypeValue.hxx>
#include <XCAFDimTolObjects_GeomToleranceZoneModif.hxx>
#include <XCAFDimTolObjects_ToleranceZoneAffectedPlane.hxx>
#include <XCAFDimTolObjects_Tool.hxx>

// template related includes

#include "NCollection_tmpl.hxx"

#include "NCollection_tmpl.hxx"

#include "NCollection_tmpl.hxx"

#include "NCollection_tmpl.hxx"

#include "NCollection_tmpl.hxx"

#include "NCollection_tmpl.hxx"


// user-defined pre
#include "OCP_specific.inc"

// user-defined inclusion per module

// Module definiiton
void register_XCAFDimTolObjects_enums(py::module &main_module) {


py::module m = main_module.def_submodule("XCAFDimTolObjects", R"#()#");

// add namespaces as submodules

// user-defined inclusion per module in the body

// enums
    py::enum_<XCAFDimTolObjects_DimensionQualifier>(m, "XCAFDimTolObjects_DimensionQualifier",R"#(Defines types of qualifier)#")
        .value("XCAFDimTolObjects_DimensionQualifier_None",XCAFDimTolObjects_DimensionQualifier::XCAFDimTolObjects_DimensionQualifier_None)
        .value("XCAFDimTolObjects_DimensionQualifier_Min",XCAFDimTolObjects_DimensionQualifier::XCAFDimTolObjects_DimensionQualifier_Min)
        .value("XCAFDimTolObjects_DimensionQualifier_Max",XCAFDimTolObjects_DimensionQualifier::XCAFDimTolObjects_DimensionQualifier_Max)
        .value("XCAFDimTolObjects_DimensionQualifier_Avg",XCAFDimTolObjects_DimensionQualifier::XCAFDimTolObjects_DimensionQualifier_Avg).export_values();
    py::enum_<XCAFDimTolObjects_GeomToleranceZoneModif>(m, "XCAFDimTolObjects_GeomToleranceZoneModif",R"#(Defines types of zone)#")
        .value("XCAFDimTolObjects_GeomToleranceZoneModif_None",XCAFDimTolObjects_GeomToleranceZoneModif::XCAFDimTolObjects_GeomToleranceZoneModif_None)
        .value("XCAFDimTolObjects_GeomToleranceZoneModif_Projected",XCAFDimTolObjects_GeomToleranceZoneModif::XCAFDimTolObjects_GeomToleranceZoneModif_Projected)
        .value("XCAFDimTolObjects_GeomToleranceZoneModif_Runout",XCAFDimTolObjects_GeomToleranceZoneModif::XCAFDimTolObjects_GeomToleranceZoneModif_Runout)
        .value("XCAFDimTolObjects_GeomToleranceZoneModif_NonUniform",XCAFDimTolObjects_GeomToleranceZoneModif::XCAFDimTolObjects_GeomToleranceZoneModif_NonUniform).export_values();
    py::enum_<XCAFDimTolObjects_GeomToleranceModif>(m, "XCAFDimTolObjects_GeomToleranceModif",R"#(Defines modifirs)#")
        .value("XCAFDimTolObjects_GeomToleranceModif_Any_Cross_Section",XCAFDimTolObjects_GeomToleranceModif::XCAFDimTolObjects_GeomToleranceModif_Any_Cross_Section)
        .value("XCAFDimTolObjects_GeomToleranceModif_Common_Zone",XCAFDimTolObjects_GeomToleranceModif::XCAFDimTolObjects_GeomToleranceModif_Common_Zone)
        .value("XCAFDimTolObjects_GeomToleranceModif_Each_Radial_Element",XCAFDimTolObjects_GeomToleranceModif::XCAFDimTolObjects_GeomToleranceModif_Each_Radial_Element)
        .value("XCAFDimTolObjects_GeomToleranceModif_Free_State",XCAFDimTolObjects_GeomToleranceModif::XCAFDimTolObjects_GeomToleranceModif_Free_State)
        .value("XCAFDimTolObjects_GeomToleranceModif_Least_Material_Requirement",XCAFDimTolObjects_GeomToleranceModif::XCAFDimTolObjects_GeomToleranceModif_Least_Material_Requirement)
        .value("XCAFDimTolObjects_GeomToleranceModif_Line_Element",XCAFDimTolObjects_GeomToleranceModif::XCAFDimTolObjects_GeomToleranceModif_Line_Element)
        .value("XCAFDimTolObjects_GeomToleranceModif_Major_Diameter",XCAFDimTolObjects_GeomToleranceModif::XCAFDimTolObjects_GeomToleranceModif_Major_Diameter)
        .value("XCAFDimTolObjects_GeomToleranceModif_Maximum_Material_Requirement",XCAFDimTolObjects_GeomToleranceModif::XCAFDimTolObjects_GeomToleranceModif_Maximum_Material_Requirement)
        .value("XCAFDimTolObjects_GeomToleranceModif_Minor_Diameter",XCAFDimTolObjects_GeomToleranceModif::XCAFDimTolObjects_GeomToleranceModif_Minor_Diameter)
        .value("XCAFDimTolObjects_GeomToleranceModif_Not_Convex",XCAFDimTolObjects_GeomToleranceModif::XCAFDimTolObjects_GeomToleranceModif_Not_Convex)
        .value("XCAFDimTolObjects_GeomToleranceModif_Pitch_Diameter",XCAFDimTolObjects_GeomToleranceModif::XCAFDimTolObjects_GeomToleranceModif_Pitch_Diameter)
        .value("XCAFDimTolObjects_GeomToleranceModif_Reciprocity_Requirement",XCAFDimTolObjects_GeomToleranceModif::XCAFDimTolObjects_GeomToleranceModif_Reciprocity_Requirement)
        .value("XCAFDimTolObjects_GeomToleranceModif_Separate_Requirement",XCAFDimTolObjects_GeomToleranceModif::XCAFDimTolObjects_GeomToleranceModif_Separate_Requirement)
        .value("XCAFDimTolObjects_GeomToleranceModif_Statistical_Tolerance",XCAFDimTolObjects_GeomToleranceModif::XCAFDimTolObjects_GeomToleranceModif_Statistical_Tolerance)
        .value("XCAFDimTolObjects_GeomToleranceModif_Tangent_Plane",XCAFDimTolObjects_GeomToleranceModif::XCAFDimTolObjects_GeomToleranceModif_Tangent_Plane)
        .value("XCAFDimTolObjects_GeomToleranceModif_All_Around",XCAFDimTolObjects_GeomToleranceModif::XCAFDimTolObjects_GeomToleranceModif_All_Around)
        .value("XCAFDimTolObjects_GeomToleranceModif_All_Over",XCAFDimTolObjects_GeomToleranceModif::XCAFDimTolObjects_GeomToleranceModif_All_Over).export_values();
    py::enum_<XCAFDimTolObjects_GeomToleranceType>(m, "XCAFDimTolObjects_GeomToleranceType",R"#(Defines types of geom tolerance)#")
        .value("XCAFDimTolObjects_GeomToleranceType_None",XCAFDimTolObjects_GeomToleranceType::XCAFDimTolObjects_GeomToleranceType_None)
        .value("XCAFDimTolObjects_GeomToleranceType_Angularity",XCAFDimTolObjects_GeomToleranceType::XCAFDimTolObjects_GeomToleranceType_Angularity)
        .value("XCAFDimTolObjects_GeomToleranceType_CircularRunout",XCAFDimTolObjects_GeomToleranceType::XCAFDimTolObjects_GeomToleranceType_CircularRunout)
        .value("XCAFDimTolObjects_GeomToleranceType_CircularityOrRoundness",XCAFDimTolObjects_GeomToleranceType::XCAFDimTolObjects_GeomToleranceType_CircularityOrRoundness)
        .value("XCAFDimTolObjects_GeomToleranceType_Coaxiality",XCAFDimTolObjects_GeomToleranceType::XCAFDimTolObjects_GeomToleranceType_Coaxiality)
        .value("XCAFDimTolObjects_GeomToleranceType_Concentricity",XCAFDimTolObjects_GeomToleranceType::XCAFDimTolObjects_GeomToleranceType_Concentricity)
        .value("XCAFDimTolObjects_GeomToleranceType_Cylindricity",XCAFDimTolObjects_GeomToleranceType::XCAFDimTolObjects_GeomToleranceType_Cylindricity)
        .value("XCAFDimTolObjects_GeomToleranceType_Flatness",XCAFDimTolObjects_GeomToleranceType::XCAFDimTolObjects_GeomToleranceType_Flatness)
        .value("XCAFDimTolObjects_GeomToleranceType_Parallelism",XCAFDimTolObjects_GeomToleranceType::XCAFDimTolObjects_GeomToleranceType_Parallelism)
        .value("XCAFDimTolObjects_GeomToleranceType_Perpendicularity",XCAFDimTolObjects_GeomToleranceType::XCAFDimTolObjects_GeomToleranceType_Perpendicularity)
        .value("XCAFDimTolObjects_GeomToleranceType_Position",XCAFDimTolObjects_GeomToleranceType::XCAFDimTolObjects_GeomToleranceType_Position)
        .value("XCAFDimTolObjects_GeomToleranceType_ProfileOfLine",XCAFDimTolObjects_GeomToleranceType::XCAFDimTolObjects_GeomToleranceType_ProfileOfLine)
        .value("XCAFDimTolObjects_GeomToleranceType_ProfileOfSurface",XCAFDimTolObjects_GeomToleranceType::XCAFDimTolObjects_GeomToleranceType_ProfileOfSurface)
        .value("XCAFDimTolObjects_GeomToleranceType_Straightness",XCAFDimTolObjects_GeomToleranceType::XCAFDimTolObjects_GeomToleranceType_Straightness)
        .value("XCAFDimTolObjects_GeomToleranceType_Symmetry",XCAFDimTolObjects_GeomToleranceType::XCAFDimTolObjects_GeomToleranceType_Symmetry)
        .value("XCAFDimTolObjects_GeomToleranceType_TotalRunout",XCAFDimTolObjects_GeomToleranceType::XCAFDimTolObjects_GeomToleranceType_TotalRunout).export_values();
    py::enum_<XCAFDimTolObjects_GeomToleranceMatReqModif>(m, "XCAFDimTolObjects_GeomToleranceMatReqModif",R"#(Defines types of material requirement)#")
        .value("XCAFDimTolObjects_GeomToleranceMatReqModif_None",XCAFDimTolObjects_GeomToleranceMatReqModif::XCAFDimTolObjects_GeomToleranceMatReqModif_None)
        .value("XCAFDimTolObjects_GeomToleranceMatReqModif_M",XCAFDimTolObjects_GeomToleranceMatReqModif::XCAFDimTolObjects_GeomToleranceMatReqModif_M)
        .value("XCAFDimTolObjects_GeomToleranceMatReqModif_L",XCAFDimTolObjects_GeomToleranceMatReqModif::XCAFDimTolObjects_GeomToleranceMatReqModif_L).export_values();
    py::enum_<XCAFDimTolObjects_GeomToleranceTypeValue>(m, "XCAFDimTolObjects_GeomToleranceTypeValue",R"#(Defines types of value of tolerane)#")
        .value("XCAFDimTolObjects_GeomToleranceTypeValue_None",XCAFDimTolObjects_GeomToleranceTypeValue::XCAFDimTolObjects_GeomToleranceTypeValue_None)
        .value("XCAFDimTolObjects_GeomToleranceTypeValue_Diameter",XCAFDimTolObjects_GeomToleranceTypeValue::XCAFDimTolObjects_GeomToleranceTypeValue_Diameter)
        .value("XCAFDimTolObjects_GeomToleranceTypeValue_SphericalDiameter",XCAFDimTolObjects_GeomToleranceTypeValue::XCAFDimTolObjects_GeomToleranceTypeValue_SphericalDiameter).export_values();
    py::enum_<XCAFDimTolObjects_ToleranceZoneAffectedPlane>(m, "XCAFDimTolObjects_ToleranceZoneAffectedPlane",R"#(Defines types of tolerance zone affected plane)#")
        .value("XCAFDimTolObjects_ToleranceZoneAffectedPlane_None",XCAFDimTolObjects_ToleranceZoneAffectedPlane::XCAFDimTolObjects_ToleranceZoneAffectedPlane_None)
        .value("XCAFDimTolObjects_ToleranceZoneAffectedPlane_Intersection",XCAFDimTolObjects_ToleranceZoneAffectedPlane::XCAFDimTolObjects_ToleranceZoneAffectedPlane_Intersection)
        .value("XCAFDimTolObjects_ToleranceZoneAffectedPlane_Orientation",XCAFDimTolObjects_ToleranceZoneAffectedPlane::XCAFDimTolObjects_ToleranceZoneAffectedPlane_Orientation).export_values();
    py::enum_<XCAFDimTolObjects_DatumModifWithValue>(m, "XCAFDimTolObjects_DatumModifWithValue",R"#(Defines modifirs)#")
        .value("XCAFDimTolObjects_DatumModifWithValue_None",XCAFDimTolObjects_DatumModifWithValue::XCAFDimTolObjects_DatumModifWithValue_None)
        .value("XCAFDimTolObjects_DatumModifWithValue_CircularOrCylindrical",XCAFDimTolObjects_DatumModifWithValue::XCAFDimTolObjects_DatumModifWithValue_CircularOrCylindrical)
        .value("XCAFDimTolObjects_DatumModifWithValue_Distance",XCAFDimTolObjects_DatumModifWithValue::XCAFDimTolObjects_DatumModifWithValue_Distance)
        .value("XCAFDimTolObjects_DatumModifWithValue_Projected",XCAFDimTolObjects_DatumModifWithValue::XCAFDimTolObjects_DatumModifWithValue_Projected)
        .value("XCAFDimTolObjects_DatumModifWithValue_Spherical",XCAFDimTolObjects_DatumModifWithValue::XCAFDimTolObjects_DatumModifWithValue_Spherical).export_values();
    py::enum_<XCAFDimTolObjects_DatumTargetType>(m, "XCAFDimTolObjects_DatumTargetType",R"#(Defines types of dimension)#")
        .value("XCAFDimTolObjects_DatumTargetType_Point",XCAFDimTolObjects_DatumTargetType::XCAFDimTolObjects_DatumTargetType_Point)
        .value("XCAFDimTolObjects_DatumTargetType_Line",XCAFDimTolObjects_DatumTargetType::XCAFDimTolObjects_DatumTargetType_Line)
        .value("XCAFDimTolObjects_DatumTargetType_Rectangle",XCAFDimTolObjects_DatumTargetType::XCAFDimTolObjects_DatumTargetType_Rectangle)
        .value("XCAFDimTolObjects_DatumTargetType_Circle",XCAFDimTolObjects_DatumTargetType::XCAFDimTolObjects_DatumTargetType_Circle)
        .value("XCAFDimTolObjects_DatumTargetType_Area",XCAFDimTolObjects_DatumTargetType::XCAFDimTolObjects_DatumTargetType_Area).export_values();
    py::enum_<XCAFDimTolObjects_DatumSingleModif>(m, "XCAFDimTolObjects_DatumSingleModif",R"#(Defines modifirs)#")
        .value("XCAFDimTolObjects_DatumSingleModif_AnyCrossSection",XCAFDimTolObjects_DatumSingleModif::XCAFDimTolObjects_DatumSingleModif_AnyCrossSection)
        .value("XCAFDimTolObjects_DatumSingleModif_Any_LongitudinalSection",XCAFDimTolObjects_DatumSingleModif::XCAFDimTolObjects_DatumSingleModif_Any_LongitudinalSection)
        .value("XCAFDimTolObjects_DatumSingleModif_Basic",XCAFDimTolObjects_DatumSingleModif::XCAFDimTolObjects_DatumSingleModif_Basic)
        .value("XCAFDimTolObjects_DatumSingleModif_ContactingFeature",XCAFDimTolObjects_DatumSingleModif::XCAFDimTolObjects_DatumSingleModif_ContactingFeature)
        .value("XCAFDimTolObjects_DatumSingleModif_DegreeOfFreedomConstraintU",XCAFDimTolObjects_DatumSingleModif::XCAFDimTolObjects_DatumSingleModif_DegreeOfFreedomConstraintU)
        .value("XCAFDimTolObjects_DatumSingleModif_DegreeOfFreedomConstraintV",XCAFDimTolObjects_DatumSingleModif::XCAFDimTolObjects_DatumSingleModif_DegreeOfFreedomConstraintV)
        .value("XCAFDimTolObjects_DatumSingleModif_DegreeOfFreedomConstraintW",XCAFDimTolObjects_DatumSingleModif::XCAFDimTolObjects_DatumSingleModif_DegreeOfFreedomConstraintW)
        .value("XCAFDimTolObjects_DatumSingleModif_DegreeOfFreedomConstraintX",XCAFDimTolObjects_DatumSingleModif::XCAFDimTolObjects_DatumSingleModif_DegreeOfFreedomConstraintX)
        .value("XCAFDimTolObjects_DatumSingleModif_DegreeOfFreedomConstraintY",XCAFDimTolObjects_DatumSingleModif::XCAFDimTolObjects_DatumSingleModif_DegreeOfFreedomConstraintY)
        .value("XCAFDimTolObjects_DatumSingleModif_DegreeOfFreedomConstraintZ",XCAFDimTolObjects_DatumSingleModif::XCAFDimTolObjects_DatumSingleModif_DegreeOfFreedomConstraintZ)
        .value("XCAFDimTolObjects_DatumSingleModif_DistanceVariable",XCAFDimTolObjects_DatumSingleModif::XCAFDimTolObjects_DatumSingleModif_DistanceVariable)
        .value("XCAFDimTolObjects_DatumSingleModif_FreeState",XCAFDimTolObjects_DatumSingleModif::XCAFDimTolObjects_DatumSingleModif_FreeState)
        .value("XCAFDimTolObjects_DatumSingleModif_LeastMaterialRequirement",XCAFDimTolObjects_DatumSingleModif::XCAFDimTolObjects_DatumSingleModif_LeastMaterialRequirement)
        .value("XCAFDimTolObjects_DatumSingleModif_Line",XCAFDimTolObjects_DatumSingleModif::XCAFDimTolObjects_DatumSingleModif_Line)
        .value("XCAFDimTolObjects_DatumSingleModif_MajorDiameter",XCAFDimTolObjects_DatumSingleModif::XCAFDimTolObjects_DatumSingleModif_MajorDiameter)
        .value("XCAFDimTolObjects_DatumSingleModif_MaximumMaterialRequirement",XCAFDimTolObjects_DatumSingleModif::XCAFDimTolObjects_DatumSingleModif_MaximumMaterialRequirement)
        .value("XCAFDimTolObjects_DatumSingleModif_MinorDiameter",XCAFDimTolObjects_DatumSingleModif::XCAFDimTolObjects_DatumSingleModif_MinorDiameter)
        .value("XCAFDimTolObjects_DatumSingleModif_Orientation",XCAFDimTolObjects_DatumSingleModif::XCAFDimTolObjects_DatumSingleModif_Orientation)
        .value("XCAFDimTolObjects_DatumSingleModif_PitchDiameter",XCAFDimTolObjects_DatumSingleModif::XCAFDimTolObjects_DatumSingleModif_PitchDiameter)
        .value("XCAFDimTolObjects_DatumSingleModif_Plane",XCAFDimTolObjects_DatumSingleModif::XCAFDimTolObjects_DatumSingleModif_Plane)
        .value("XCAFDimTolObjects_DatumSingleModif_Point",XCAFDimTolObjects_DatumSingleModif::XCAFDimTolObjects_DatumSingleModif_Point)
        .value("XCAFDimTolObjects_DatumSingleModif_Translation",XCAFDimTolObjects_DatumSingleModif::XCAFDimTolObjects_DatumSingleModif_Translation).export_values();
    py::enum_<XCAFDimTolObjects_AngularQualifier>(m, "XCAFDimTolObjects_AngularQualifier",R"#(Defines types of qualifier for angular dimensions)#")
        .value("XCAFDimTolObjects_AngularQualifier_None",XCAFDimTolObjects_AngularQualifier::XCAFDimTolObjects_AngularQualifier_None)
        .value("XCAFDimTolObjects_AngularQualifier_Small",XCAFDimTolObjects_AngularQualifier::XCAFDimTolObjects_AngularQualifier_Small)
        .value("XCAFDimTolObjects_AngularQualifier_Large",XCAFDimTolObjects_AngularQualifier::XCAFDimTolObjects_AngularQualifier_Large)
        .value("XCAFDimTolObjects_AngularQualifier_Equal",XCAFDimTolObjects_AngularQualifier::XCAFDimTolObjects_AngularQualifier_Equal).export_values();
    py::enum_<XCAFDimTolObjects_DimensionModif>(m, "XCAFDimTolObjects_DimensionModif",R"#(Defines modifirs)#")
        .value("XCAFDimTolObjects_DimensionModif_ControlledRadius",XCAFDimTolObjects_DimensionModif::XCAFDimTolObjects_DimensionModif_ControlledRadius)
        .value("XCAFDimTolObjects_DimensionModif_Square",XCAFDimTolObjects_DimensionModif::XCAFDimTolObjects_DimensionModif_Square)
        .value("XCAFDimTolObjects_DimensionModif_StatisticalTolerance",XCAFDimTolObjects_DimensionModif::XCAFDimTolObjects_DimensionModif_StatisticalTolerance)
        .value("XCAFDimTolObjects_DimensionModif_ContinuousFeature",XCAFDimTolObjects_DimensionModif::XCAFDimTolObjects_DimensionModif_ContinuousFeature)
        .value("XCAFDimTolObjects_DimensionModif_TwoPointSize",XCAFDimTolObjects_DimensionModif::XCAFDimTolObjects_DimensionModif_TwoPointSize)
        .value("XCAFDimTolObjects_DimensionModif_LocalSizeDefinedBySphere",XCAFDimTolObjects_DimensionModif::XCAFDimTolObjects_DimensionModif_LocalSizeDefinedBySphere)
        .value("XCAFDimTolObjects_DimensionModif_LeastSquaresAssociationCriterion",XCAFDimTolObjects_DimensionModif::XCAFDimTolObjects_DimensionModif_LeastSquaresAssociationCriterion)
        .value("XCAFDimTolObjects_DimensionModif_MaximumInscribedAssociation",XCAFDimTolObjects_DimensionModif::XCAFDimTolObjects_DimensionModif_MaximumInscribedAssociation)
        .value("XCAFDimTolObjects_DimensionModif_MinimumCircumscribedAssociation",XCAFDimTolObjects_DimensionModif::XCAFDimTolObjects_DimensionModif_MinimumCircumscribedAssociation)
        .value("XCAFDimTolObjects_DimensionModif_CircumferenceDiameter",XCAFDimTolObjects_DimensionModif::XCAFDimTolObjects_DimensionModif_CircumferenceDiameter)
        .value("XCAFDimTolObjects_DimensionModif_AreaDiameter",XCAFDimTolObjects_DimensionModif::XCAFDimTolObjects_DimensionModif_AreaDiameter)
        .value("XCAFDimTolObjects_DimensionModif_VolumeDiameter",XCAFDimTolObjects_DimensionModif::XCAFDimTolObjects_DimensionModif_VolumeDiameter)
        .value("XCAFDimTolObjects_DimensionModif_MaximumSize",XCAFDimTolObjects_DimensionModif::XCAFDimTolObjects_DimensionModif_MaximumSize)
        .value("XCAFDimTolObjects_DimensionModif_MinimumSize",XCAFDimTolObjects_DimensionModif::XCAFDimTolObjects_DimensionModif_MinimumSize)
        .value("XCAFDimTolObjects_DimensionModif_AverageSize",XCAFDimTolObjects_DimensionModif::XCAFDimTolObjects_DimensionModif_AverageSize)
        .value("XCAFDimTolObjects_DimensionModif_MedianSize",XCAFDimTolObjects_DimensionModif::XCAFDimTolObjects_DimensionModif_MedianSize)
        .value("XCAFDimTolObjects_DimensionModif_MidRangeSize",XCAFDimTolObjects_DimensionModif::XCAFDimTolObjects_DimensionModif_MidRangeSize)
        .value("XCAFDimTolObjects_DimensionModif_RangeOfSizes",XCAFDimTolObjects_DimensionModif::XCAFDimTolObjects_DimensionModif_RangeOfSizes)
        .value("XCAFDimTolObjects_DimensionModif_AnyRestrictedPortionOfFeature",XCAFDimTolObjects_DimensionModif::XCAFDimTolObjects_DimensionModif_AnyRestrictedPortionOfFeature)
        .value("XCAFDimTolObjects_DimensionModif_AnyCrossSection",XCAFDimTolObjects_DimensionModif::XCAFDimTolObjects_DimensionModif_AnyCrossSection)
        .value("XCAFDimTolObjects_DimensionModif_SpecificFixedCrossSection",XCAFDimTolObjects_DimensionModif::XCAFDimTolObjects_DimensionModif_SpecificFixedCrossSection)
        .value("XCAFDimTolObjects_DimensionModif_CommonTolerance",XCAFDimTolObjects_DimensionModif::XCAFDimTolObjects_DimensionModif_CommonTolerance)
        .value("XCAFDimTolObjects_DimensionModif_FreeStateCondition",XCAFDimTolObjects_DimensionModif::XCAFDimTolObjects_DimensionModif_FreeStateCondition)
        .value("XCAFDimTolObjects_DimensionModif_Between",XCAFDimTolObjects_DimensionModif::XCAFDimTolObjects_DimensionModif_Between).export_values();
    py::enum_<XCAFDimTolObjects_DimensionType>(m, "XCAFDimTolObjects_DimensionType",R"#(Defines types of dimension)#")
        .value("XCAFDimTolObjects_DimensionType_Location_None",XCAFDimTolObjects_DimensionType::XCAFDimTolObjects_DimensionType_Location_None)
        .value("XCAFDimTolObjects_DimensionType_Location_CurvedDistance",XCAFDimTolObjects_DimensionType::XCAFDimTolObjects_DimensionType_Location_CurvedDistance)
        .value("XCAFDimTolObjects_DimensionType_Location_LinearDistance",XCAFDimTolObjects_DimensionType::XCAFDimTolObjects_DimensionType_Location_LinearDistance)
        .value("XCAFDimTolObjects_DimensionType_Location_LinearDistance_FromCenterToOuter",XCAFDimTolObjects_DimensionType::XCAFDimTolObjects_DimensionType_Location_LinearDistance_FromCenterToOuter)
        .value("XCAFDimTolObjects_DimensionType_Location_LinearDistance_FromCenterToInner",XCAFDimTolObjects_DimensionType::XCAFDimTolObjects_DimensionType_Location_LinearDistance_FromCenterToInner)
        .value("XCAFDimTolObjects_DimensionType_Location_LinearDistance_FromOuterToCenter",XCAFDimTolObjects_DimensionType::XCAFDimTolObjects_DimensionType_Location_LinearDistance_FromOuterToCenter)
        .value("XCAFDimTolObjects_DimensionType_Location_LinearDistance_FromOuterToOuter",XCAFDimTolObjects_DimensionType::XCAFDimTolObjects_DimensionType_Location_LinearDistance_FromOuterToOuter)
        .value("XCAFDimTolObjects_DimensionType_Location_LinearDistance_FromOuterToInner",XCAFDimTolObjects_DimensionType::XCAFDimTolObjects_DimensionType_Location_LinearDistance_FromOuterToInner)
        .value("XCAFDimTolObjects_DimensionType_Location_LinearDistance_FromInnerToCenter",XCAFDimTolObjects_DimensionType::XCAFDimTolObjects_DimensionType_Location_LinearDistance_FromInnerToCenter)
        .value("XCAFDimTolObjects_DimensionType_Location_LinearDistance_FromInnerToOuter",XCAFDimTolObjects_DimensionType::XCAFDimTolObjects_DimensionType_Location_LinearDistance_FromInnerToOuter)
        .value("XCAFDimTolObjects_DimensionType_Location_LinearDistance_FromInnerToInner",XCAFDimTolObjects_DimensionType::XCAFDimTolObjects_DimensionType_Location_LinearDistance_FromInnerToInner)
        .value("XCAFDimTolObjects_DimensionType_Location_Angular",XCAFDimTolObjects_DimensionType::XCAFDimTolObjects_DimensionType_Location_Angular)
        .value("XCAFDimTolObjects_DimensionType_Location_Oriented",XCAFDimTolObjects_DimensionType::XCAFDimTolObjects_DimensionType_Location_Oriented)
        .value("XCAFDimTolObjects_DimensionType_Location_WithPath",XCAFDimTolObjects_DimensionType::XCAFDimTolObjects_DimensionType_Location_WithPath)
        .value("XCAFDimTolObjects_DimensionType_Size_CurveLength",XCAFDimTolObjects_DimensionType::XCAFDimTolObjects_DimensionType_Size_CurveLength)
        .value("XCAFDimTolObjects_DimensionType_Size_Diameter",XCAFDimTolObjects_DimensionType::XCAFDimTolObjects_DimensionType_Size_Diameter)
        .value("XCAFDimTolObjects_DimensionType_Size_SphericalDiameter",XCAFDimTolObjects_DimensionType::XCAFDimTolObjects_DimensionType_Size_SphericalDiameter)
        .value("XCAFDimTolObjects_DimensionType_Size_Radius",XCAFDimTolObjects_DimensionType::XCAFDimTolObjects_DimensionType_Size_Radius)
        .value("XCAFDimTolObjects_DimensionType_Size_SphericalRadius",XCAFDimTolObjects_DimensionType::XCAFDimTolObjects_DimensionType_Size_SphericalRadius)
        .value("XCAFDimTolObjects_DimensionType_Size_ToroidalMinorDiameter",XCAFDimTolObjects_DimensionType::XCAFDimTolObjects_DimensionType_Size_ToroidalMinorDiameter)
        .value("XCAFDimTolObjects_DimensionType_Size_ToroidalMajorDiameter",XCAFDimTolObjects_DimensionType::XCAFDimTolObjects_DimensionType_Size_ToroidalMajorDiameter)
        .value("XCAFDimTolObjects_DimensionType_Size_ToroidalMinorRadius",XCAFDimTolObjects_DimensionType::XCAFDimTolObjects_DimensionType_Size_ToroidalMinorRadius)
        .value("XCAFDimTolObjects_DimensionType_Size_ToroidalMajorRadius",XCAFDimTolObjects_DimensionType::XCAFDimTolObjects_DimensionType_Size_ToroidalMajorRadius)
        .value("XCAFDimTolObjects_DimensionType_Size_ToroidalHighMajorDiameter",XCAFDimTolObjects_DimensionType::XCAFDimTolObjects_DimensionType_Size_ToroidalHighMajorDiameter)
        .value("XCAFDimTolObjects_DimensionType_Size_ToroidalLowMajorDiameter",XCAFDimTolObjects_DimensionType::XCAFDimTolObjects_DimensionType_Size_ToroidalLowMajorDiameter)
        .value("XCAFDimTolObjects_DimensionType_Size_ToroidalHighMajorRadius",XCAFDimTolObjects_DimensionType::XCAFDimTolObjects_DimensionType_Size_ToroidalHighMajorRadius)
        .value("XCAFDimTolObjects_DimensionType_Size_ToroidalLowMajorRadius",XCAFDimTolObjects_DimensionType::XCAFDimTolObjects_DimensionType_Size_ToroidalLowMajorRadius)
        .value("XCAFDimTolObjects_DimensionType_Size_Thickness",XCAFDimTolObjects_DimensionType::XCAFDimTolObjects_DimensionType_Size_Thickness)
        .value("XCAFDimTolObjects_DimensionType_Size_Angular",XCAFDimTolObjects_DimensionType::XCAFDimTolObjects_DimensionType_Size_Angular)
        .value("XCAFDimTolObjects_DimensionType_Size_WithPath",XCAFDimTolObjects_DimensionType::XCAFDimTolObjects_DimensionType_Size_WithPath)
        .value("XCAFDimTolObjects_DimensionType_CommonLabel",XCAFDimTolObjects_DimensionType::XCAFDimTolObjects_DimensionType_CommonLabel)
        .value("XCAFDimTolObjects_DimensionType_DimensionPresentation",XCAFDimTolObjects_DimensionType::XCAFDimTolObjects_DimensionType_DimensionPresentation).export_values();
    py::enum_<XCAFDimTolObjects_DimensionGrade>(m, "XCAFDimTolObjects_DimensionGrade",R"#(Defines value of grade)#")
        .value("XCAFDimTolObjects_DimensionGrade_IT01",XCAFDimTolObjects_DimensionGrade::XCAFDimTolObjects_DimensionGrade_IT01)
        .value("XCAFDimTolObjects_DimensionGrade_IT0",XCAFDimTolObjects_DimensionGrade::XCAFDimTolObjects_DimensionGrade_IT0)
        .value("XCAFDimTolObjects_DimensionGrade_IT1",XCAFDimTolObjects_DimensionGrade::XCAFDimTolObjects_DimensionGrade_IT1)
        .value("XCAFDimTolObjects_DimensionGrade_IT2",XCAFDimTolObjects_DimensionGrade::XCAFDimTolObjects_DimensionGrade_IT2)
        .value("XCAFDimTolObjects_DimensionGrade_IT3",XCAFDimTolObjects_DimensionGrade::XCAFDimTolObjects_DimensionGrade_IT3)
        .value("XCAFDimTolObjects_DimensionGrade_IT4",XCAFDimTolObjects_DimensionGrade::XCAFDimTolObjects_DimensionGrade_IT4)
        .value("XCAFDimTolObjects_DimensionGrade_IT5",XCAFDimTolObjects_DimensionGrade::XCAFDimTolObjects_DimensionGrade_IT5)
        .value("XCAFDimTolObjects_DimensionGrade_IT6",XCAFDimTolObjects_DimensionGrade::XCAFDimTolObjects_DimensionGrade_IT6)
        .value("XCAFDimTolObjects_DimensionGrade_IT7",XCAFDimTolObjects_DimensionGrade::XCAFDimTolObjects_DimensionGrade_IT7)
        .value("XCAFDimTolObjects_DimensionGrade_IT8",XCAFDimTolObjects_DimensionGrade::XCAFDimTolObjects_DimensionGrade_IT8)
        .value("XCAFDimTolObjects_DimensionGrade_IT9",XCAFDimTolObjects_DimensionGrade::XCAFDimTolObjects_DimensionGrade_IT9)
        .value("XCAFDimTolObjects_DimensionGrade_IT10",XCAFDimTolObjects_DimensionGrade::XCAFDimTolObjects_DimensionGrade_IT10)
        .value("XCAFDimTolObjects_DimensionGrade_IT11",XCAFDimTolObjects_DimensionGrade::XCAFDimTolObjects_DimensionGrade_IT11)
        .value("XCAFDimTolObjects_DimensionGrade_IT12",XCAFDimTolObjects_DimensionGrade::XCAFDimTolObjects_DimensionGrade_IT12)
        .value("XCAFDimTolObjects_DimensionGrade_IT13",XCAFDimTolObjects_DimensionGrade::XCAFDimTolObjects_DimensionGrade_IT13)
        .value("XCAFDimTolObjects_DimensionGrade_IT14",XCAFDimTolObjects_DimensionGrade::XCAFDimTolObjects_DimensionGrade_IT14)
        .value("XCAFDimTolObjects_DimensionGrade_IT15",XCAFDimTolObjects_DimensionGrade::XCAFDimTolObjects_DimensionGrade_IT15)
        .value("XCAFDimTolObjects_DimensionGrade_IT16",XCAFDimTolObjects_DimensionGrade::XCAFDimTolObjects_DimensionGrade_IT16)
        .value("XCAFDimTolObjects_DimensionGrade_IT17",XCAFDimTolObjects_DimensionGrade::XCAFDimTolObjects_DimensionGrade_IT17)
        .value("XCAFDimTolObjects_DimensionGrade_IT18",XCAFDimTolObjects_DimensionGrade::XCAFDimTolObjects_DimensionGrade_IT18).export_values();
    py::enum_<XCAFDimTolObjects_DimensionFormVariance>(m, "XCAFDimTolObjects_DimensionFormVariance",R"#(Defines value of form variance)#")
        .value("XCAFDimTolObjects_DimensionFormVariance_None",XCAFDimTolObjects_DimensionFormVariance::XCAFDimTolObjects_DimensionFormVariance_None)
        .value("XCAFDimTolObjects_DimensionFormVariance_A",XCAFDimTolObjects_DimensionFormVariance::XCAFDimTolObjects_DimensionFormVariance_A)
        .value("XCAFDimTolObjects_DimensionFormVariance_B",XCAFDimTolObjects_DimensionFormVariance::XCAFDimTolObjects_DimensionFormVariance_B)
        .value("XCAFDimTolObjects_DimensionFormVariance_C",XCAFDimTolObjects_DimensionFormVariance::XCAFDimTolObjects_DimensionFormVariance_C)
        .value("XCAFDimTolObjects_DimensionFormVariance_CD",XCAFDimTolObjects_DimensionFormVariance::XCAFDimTolObjects_DimensionFormVariance_CD)
        .value("XCAFDimTolObjects_DimensionFormVariance_D",XCAFDimTolObjects_DimensionFormVariance::XCAFDimTolObjects_DimensionFormVariance_D)
        .value("XCAFDimTolObjects_DimensionFormVariance_E",XCAFDimTolObjects_DimensionFormVariance::XCAFDimTolObjects_DimensionFormVariance_E)
        .value("XCAFDimTolObjects_DimensionFormVariance_EF",XCAFDimTolObjects_DimensionFormVariance::XCAFDimTolObjects_DimensionFormVariance_EF)
        .value("XCAFDimTolObjects_DimensionFormVariance_F",XCAFDimTolObjects_DimensionFormVariance::XCAFDimTolObjects_DimensionFormVariance_F)
        .value("XCAFDimTolObjects_DimensionFormVariance_FG",XCAFDimTolObjects_DimensionFormVariance::XCAFDimTolObjects_DimensionFormVariance_FG)
        .value("XCAFDimTolObjects_DimensionFormVariance_G",XCAFDimTolObjects_DimensionFormVariance::XCAFDimTolObjects_DimensionFormVariance_G)
        .value("XCAFDimTolObjects_DimensionFormVariance_H",XCAFDimTolObjects_DimensionFormVariance::XCAFDimTolObjects_DimensionFormVariance_H)
        .value("XCAFDimTolObjects_DimensionFormVariance_JS",XCAFDimTolObjects_DimensionFormVariance::XCAFDimTolObjects_DimensionFormVariance_JS)
        .value("XCAFDimTolObjects_DimensionFormVariance_J",XCAFDimTolObjects_DimensionFormVariance::XCAFDimTolObjects_DimensionFormVariance_J)
        .value("XCAFDimTolObjects_DimensionFormVariance_K",XCAFDimTolObjects_DimensionFormVariance::XCAFDimTolObjects_DimensionFormVariance_K)
        .value("XCAFDimTolObjects_DimensionFormVariance_M",XCAFDimTolObjects_DimensionFormVariance::XCAFDimTolObjects_DimensionFormVariance_M)
        .value("XCAFDimTolObjects_DimensionFormVariance_N",XCAFDimTolObjects_DimensionFormVariance::XCAFDimTolObjects_DimensionFormVariance_N)
        .value("XCAFDimTolObjects_DimensionFormVariance_P",XCAFDimTolObjects_DimensionFormVariance::XCAFDimTolObjects_DimensionFormVariance_P)
        .value("XCAFDimTolObjects_DimensionFormVariance_R",XCAFDimTolObjects_DimensionFormVariance::XCAFDimTolObjects_DimensionFormVariance_R)
        .value("XCAFDimTolObjects_DimensionFormVariance_S",XCAFDimTolObjects_DimensionFormVariance::XCAFDimTolObjects_DimensionFormVariance_S)
        .value("XCAFDimTolObjects_DimensionFormVariance_T",XCAFDimTolObjects_DimensionFormVariance::XCAFDimTolObjects_DimensionFormVariance_T)
        .value("XCAFDimTolObjects_DimensionFormVariance_U",XCAFDimTolObjects_DimensionFormVariance::XCAFDimTolObjects_DimensionFormVariance_U)
        .value("XCAFDimTolObjects_DimensionFormVariance_V",XCAFDimTolObjects_DimensionFormVariance::XCAFDimTolObjects_DimensionFormVariance_V)
        .value("XCAFDimTolObjects_DimensionFormVariance_X",XCAFDimTolObjects_DimensionFormVariance::XCAFDimTolObjects_DimensionFormVariance_X)
        .value("XCAFDimTolObjects_DimensionFormVariance_Y",XCAFDimTolObjects_DimensionFormVariance::XCAFDimTolObjects_DimensionFormVariance_Y)
        .value("XCAFDimTolObjects_DimensionFormVariance_Z",XCAFDimTolObjects_DimensionFormVariance::XCAFDimTolObjects_DimensionFormVariance_Z)
        .value("XCAFDimTolObjects_DimensionFormVariance_ZA",XCAFDimTolObjects_DimensionFormVariance::XCAFDimTolObjects_DimensionFormVariance_ZA)
        .value("XCAFDimTolObjects_DimensionFormVariance_ZB",XCAFDimTolObjects_DimensionFormVariance::XCAFDimTolObjects_DimensionFormVariance_ZB)
        .value("XCAFDimTolObjects_DimensionFormVariance_ZC",XCAFDimTolObjects_DimensionFormVariance::XCAFDimTolObjects_DimensionFormVariance_ZC).export_values();

//Python trampoline classes

// pre-register typdefs+classes (topologically sorted)
    py::class_<XCAFDimTolObjects_Tool , shared_ptr<XCAFDimTolObjects_Tool>  >(m,"XCAFDimTolObjects_Tool",R"#()#");
    preregister_template_NCollection_Sequence<XCAFDimTolObjects_DatumSingleModif>(m,"XCAFDimTolObjects_DatumModifiersSequence");
    py::class_<XCAFDimTolObjects_DatumObject ,opencascade::handle<XCAFDimTolObjects_DatumObject>  , Standard_Transient >(m,"XCAFDimTolObjects_DatumObject",R"#(Access object to store datumAccess object to store datumAccess object to store datum)#");
    preregister_template_NCollection_Sequence<opencascade::handle<XCAFDimTolObjects_DatumObject>>(m,"XCAFDimTolObjects_DatumObjectSequence");
    preregister_template_NCollection_Sequence<XCAFDimTolObjects_DimensionModif>(m,"XCAFDimTolObjects_DimensionModifiersSequence");
    py::class_<XCAFDimTolObjects_DimensionObject ,opencascade::handle<XCAFDimTolObjects_DimensionObject>  , Standard_Transient >(m,"XCAFDimTolObjects_DimensionObject",R"#(Access object to store dimension dataAccess object to store dimension dataAccess object to store dimension data)#");
    preregister_template_NCollection_Sequence<opencascade::handle<XCAFDimTolObjects_DimensionObject>>(m,"XCAFDimTolObjects_DimensionObjectSequence");
    preregister_template_NCollection_Sequence<XCAFDimTolObjects_GeomToleranceModif>(m,"XCAFDimTolObjects_GeomToleranceModifiersSequence");
    py::class_<XCAFDimTolObjects_GeomToleranceObject ,opencascade::handle<XCAFDimTolObjects_GeomToleranceObject>  , Standard_Transient >(m,"XCAFDimTolObjects_GeomToleranceObject",R"#(Access object to store dimension and toleranceAccess object to store dimension and toleranceAccess object to store dimension and tolerance)#");
    preregister_template_NCollection_Sequence<opencascade::handle<XCAFDimTolObjects_GeomToleranceObject>>(m,"XCAFDimTolObjects_GeomToleranceObjectSequence");

};

// user-defined post-inclusion per module

// user-defined post
